charts.html revision 9fe78cb6e8c09c2e8e2a4628772453f0b9c1bcb7
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp<html>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp <head>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp <meta http-equiv="content-type" content="text/html; charset=utf-8">
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp <style>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /*Supplemental: CSS for the YUI distribution*/
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp #custom-doc { width: 95%; min-width: 950px; }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp #pagetitle {background-image: url(/assets/bg_hd.gif);}
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp #mychart {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp padding:10px 10px 10px 10px;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp </style>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp <link rel="stylesheet" type="text/css" href="/build/cssfonts/fonts-min.css">
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp </head>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp<body class="yui3-skin-sam">
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp<h3>Unit Tests</h3>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp<div id="mychart"></div>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp<script type="text/javascript" src="/build/yui/yui-min.js"></script>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp<script>
562568c870b1109f8b462727a15d214d71d892afTrippYUI({
562568c870b1109f8b462727a15d214d71d892afTripp allowRollup: false,
562568c870b1109f8b462727a15d214d71d892afTripp filter: (window.location.search.match(/[?&]filter=([^&]+)/) || [])[1] || 'min'
562568c870b1109f8b462727a15d214d71d892afTripp}).use('charts', 'test', 'console', function (Y)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp{
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp Y.namespace("example.test");
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp
b4da4dbaec018452f750d5ffc00c96e4eba47e9aTripp var suite = new Y.Test.Suite("Y.Charts"),
b4da4dbaec018452f750d5ffc00c96e4eba47e9aTripp
b4da4dbaec018452f750d5ffc00c96e4eba47e9aTripp ChartTests = new Y.Test.Case({
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp name: "Chart Tests",
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp setUp: function() {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var myDataValues = [
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {category:"5/1/2010", values:2000, expenses:3700, revenue:2200},
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {category:"5/2/2010", values:50, expenses:9100, revenue:100},
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {category:"5/3/2010", values:400, expenses:1100, revenue:1500},
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {category:"5/4/2010", values:200, expenses:1900, revenue:2800},
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {category:"5/5/2010", values:5000, expenses:5000, revenue:2650}
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp ];
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp var mychart = new Y.Chart({width:400, height:300, dataProvider:myDataValues});
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp mychart.render("#mychart");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.chart = mychart;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tearDown: function() {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.chart.destroy();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp //Test to ensure that all items in the series collection are of the correct type.
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp testGetSeriesByIndex: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var series = this.chart.getSeries(0),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert = Y.Assert;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert.isInstanceOf(Y.CartesianSeries, series);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp //Test to ensure that all items in the series collection are of the correct type.
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp testGetSeriesByKey: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var series = this.chart.getSeries("revenue"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert = Y.Assert;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert.isInstanceOf(Y.CartesianSeries, series);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp //Test to ensure the series axes are numeric and the category axis is of type category
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp testGetAxesByKey: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var category = this.chart.getAxisByKey("category"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp values = this.chart.getAxisByKey("values"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert = Y.Assert;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert.isInstanceOf(Y.CategoryAxis, category);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert.isInstanceOf(Y.NumericAxis, values);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp //Test to ensure that getCategoryAxis returns a category axis
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp testGetCategoryAxis: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var category = this.chart.get("categoryAxis"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert = Y.Assert;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert.isInstanceOf(Y.CategoryAxis, category);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp //Test that the graph attribute is of type Graph
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp testGetGraph: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp Y.Assert.isInstanceOf(Y.Graph, this.chart.get("graph"));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp //Test to ensure that the axes hash contains AxisRenderer instances
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp testGetAxes: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var assert = Y.Assert,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp axes = this.chart.get("axes"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp i;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp for(i in axes)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(axes.hasOwnProperty(i))
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp assert.isInstanceOf(Y.Axis, axes[i]);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp //Test to ensure that default series keys are correct
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp testGetSeriesKeys: function()
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp var assert = Y.Assert,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp YArray = Y.Array,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp selectedIndex,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp testKeys = ['values', 'expenses', 'revenue'],
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp newArray = [],
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp actualKeys = this.chart.get("seriesKeys"),
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp i = 0,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp len = testKeys.length;
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp assert.areEqual(actualKeys.length, testKeys.length, "Actual seriesKeys array is not the correct length.");
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp for(; i < len; ++i)
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp selectedIndex = YArray.indexOf(actualKeys, testKeys[i]);
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp assert.isNotNull(selectedIndex + 1, "The seriesKeys array should contain the following key: " + testKeys[i] + ".");
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp if(selectedIndex > -1)
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp newArray.push(actualKeys[selectedIndex]);
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp else
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp throw new Error("The actual seriesKeys array should but does not contain " + testKeys[i] + ".");
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp assert.areEqual(newArray.length, actualKeys.length, "The seriesKeys array has more keys than it should.");
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp },
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp //Test to ensure default attributes are correct
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp testGetDefaultAttributes: function()
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp var assert = Y.Assert,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp attrs = {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp direction: "horizontal",
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp type: "combo",
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp valueAxisName: "values",
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp categoryAxisName: "category",
9fe78cb6e8c09c2e8e2a4628772453f0b9c1bcb7Tripp categoryKey: "category",
9fe78cb6e8c09c2e8e2a4628772453f0b9c1bcb7Tripp categoryType: "category",
9fe78cb6e8c09c2e8e2a4628772453f0b9c1bcb7Tripp interactionType: "marker"
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp },
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp chart = this.chart,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp i;
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp for(i in attrs)
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp if(attrs.hasOwnProperty(i))
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp assert.areEqual(chart.get(i), attrs[i], "The attribute " + i + " should equal " + attrs[i] + ".");
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp });
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp var GraphTests = new Y.Test.Case({
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp name: "Graph Tests",
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp setUp: function() {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var myDataValues = [
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {category:"5/1/2010", values:2000, expenses:3700, revenue:2200},
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {category:"5/2/2010", values:50, expenses:9100, revenue:100},
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {category:"5/3/2010", values:400, expenses:1100, revenue:1500},
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {category:"5/4/2010", values:200, expenses:1900, revenue:2800},
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {category:"5/5/2010", values:5000, expenses:5000, revenue:2650}
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp ];
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var mychart = new Y.Chart({width:400, height:300, dataProvider:myDataValues, seriesKeys:["values", "revenue"]});
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp mychart.render("#mychart");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp this.chart = mychart;
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp tearDown: function() {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp this.chart.destroy();
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(line)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("line");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.LineSeries, "The series type should be Y.LineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(column)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("column");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.ColumnSeries, "The series type should be Y.ColumnSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(bar)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("bar");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.BarSeries, "The series type should be Y.BarSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(area)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("area");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.AreaSeries, "The series type should be Y.AreaSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedarea)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedarea");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedAreaSeries, "The series type should be Y.StackedAreaSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedcolumn)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedcolumn");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedColumnSeries, "The series type should be Y.StackedColumnSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedbar)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedbar");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedBarSeries, "The series type should be Y.StackedBarSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedline)": function()
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedline");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedLineSeries, "The series type should be Y.StackedLineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(markerseries)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("markerseries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.MarkerSeries, "The series type should be Y.MarkerSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedmarkerseries)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedmarkerseries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedMarkerSeries, "The series type should be Y.StackedMarkerSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(spline)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("spline");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.SplineSeries, "The series type should be Y.SplineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(areaspline)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("areaspline");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.AreaSplineSeries, "The series type should be Y.AreaSplineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedspline)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedspline");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedSplineSeries, "The series type should be Y.StackedSplineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedareapline)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedareaspline");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedAreaSplineSeries, "The series type should be Y.StackedAreaSplineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(pie)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("pie");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.PieSeries, "The series type should be Y.PieSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(combo)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("combo");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.ComboSeries, "The series type should be Y.ComboSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedcombo)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedcombo");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedComboSeries, "The series type should be Y.StackedComboSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(combospline)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("combospline");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.ComboSplineSeries, "The series type should be Y.ComboSplineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(stackedcombospline)": function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries("stackedcombospline");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.StackedComboSplineSeries, "The series type should be Y.StackedComboSplineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp },
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp "test:graph._getSeries(customclass)" : function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var graph = this.chart.get("graph"),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series;
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.CustomLineSeries = Y.Base.create("customLineSeries", Y.LineSeries, [], {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp mycustomprop: null,
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp mycustommethod: function()
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp {
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var yaypie = "mmmm";
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp yaypie += "Pie";
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp }
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp });
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp series = graph._getSeries(Y.CustomLineSeries);
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp Y.Assert.areEqual(series, Y.CustomLineSeries, "The series type should be Y.CustomLineSeries");
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp }
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }),
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp //test to ensure that pie charts are drawn from center
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp //pie charts need to have the same width/height
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp PieCenterTest = new Y.Test.Case({
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp name: "PieChartCenterTest",
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp setUp: function() {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp var myDataValues = [
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {day:"Monday", taxes:2000},
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {day:"Tuesday", taxes:50},
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {day:"Wednesday", taxes:4000},
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {day:"Thursday", taxes:200},
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {day:"Friday", taxes:2000}
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp ];
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp var mychart = new Y.Chart({type: "pie", width:400, height:400, dataProvider:myDataValues});
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp mychart.render("#mychart");
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp this.chart = mychart;
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp },
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp tearDown: function() {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp this.chart.destroy();
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp },
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp testWidthAndHeightEqual: function()
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp var graphic = this.chart.get("graph").get("graphic"),
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shapes = graphic.get("shapes"),
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp i,
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shape;
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp for(i in shapes)
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp if(shapes.hasOwnProperty(i))
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shape = shapes[i];
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp Y.assert(shape.get("width") === shape.get("height"));
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp },
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp testWidthGreaterThanHeight: function()
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp var graphic = this.chart.get("graph").get("graphic"),
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shapes,
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp i,
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shape;
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp this.chart.set("width", 500);
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shapes = graphic.get("shapes");
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp for(i in shapes)
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp if(shapes.hasOwnProperty(i))
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shape = shapes[i];
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp Y.assert(shape.get("width") === shape.get("height"));
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp },
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp testHeightGreaterThanWidth: function()
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp var graphic = this.chart.get("graph").get("graphic"),
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shapes,
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp i,
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shape;
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp this.chart.set("height", 600);
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shapes = graphic.get("shapes");
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp for(i in shapes)
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp if(shapes.hasOwnProperty(i))
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp shape = shapes[i];
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp Y.assert(shape.get("width") === shape.get("height"));
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }
d3b946ea132381f890f171317911414c8dce0bd2Tripp });
ced3db7b2fe80d8e729461a5cae82840cdb31b2fTripp
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp suite.add(ChartTests);
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp suite.add(GraphTests);
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp suite.add(PieCenterTest);
b4da4dbaec018452f750d5ffc00c96e4eba47e9aTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp //create the console
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var r = new Y.Console({
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp newestOnTop : false,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp style: 'block' // to anchor in the example content
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp });
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp r.render('#testLogger');
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp //run the tests
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp Y.Test.Runner.setName("Y.Charts");
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp Y.Test.Runner.add(suite);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp Y.Test.Runner.run();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp});
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp</script>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp</body>
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp</html>