1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
4
<meta http-equiv="content-type" content="text/html; charset=utf-8">
6
/*Supplemental: CSS for the YUI distribution*/
7
#custom-doc { width: 95%; min-width: 950px; }
8
#pagetitle {background-image: url(../../assets/bg_hd.gif);}
10
padding:10px 10px 10px 10px;
13
<link rel="stylesheet" type="text/css" href="../../../build/cssfonts/fonts-min.css">
15
<body class="yui3-skin-sam">
17
<div id="mychart"></div>
18
<script type="text/javascript" src="../../../build/yui/yui-min.js"></script>
22
filter: (window.location.search.match(/[?&]filter=([^&]+)/) || [])[1] || 'min'
23
}).use('charts-legend', 'test', 'console', function (Y)
25
Y.namespace("example.test");
27
var suite = new Y.Test.Suite("Y.Charts.Legend"),
29
LegendTestTemplate = function(cfg, globalCfg)
32
LegendTestTemplate.superclass.constructor.apply(this);
33
cfg.width = cfg.width || 400;
34
cfg.height = cfg.height || 300;
35
cfg.categoryKey = "date";
39
if(globalCfg.hasOwnProperty(i))
41
this[i] = globalCfg[i];
46
Y.extend(LegendTestTemplate, Y.Test.Case, {
48
this.chart = new Y.Chart(this.attrCfg);
51
tearDown: function() {
52
this.chart.destroy(true);
56
var basicDataValues = [
57
{date:"5/1/2010", miscellaneous:2000, expenses:3700, revenue:2200},
58
{date:"5/2/2010", miscellaneous:50, expenses:9100, revenue:100},
59
{date:"5/3/2010", miscellaneous:400, expenses:1100, revenue:1500},
60
{date:"5/4/2010", miscellaneous:200, expenses:1900, revenue:2800},
61
{date:"5/5/2010", miscellaneous:5000, expenses:5000, revenue:2650}
65
{date:"5/1/2010", miscellaneous:2000},
66
{date:"5/2/2010", miscellaneous:50},
67
{date:"5/3/2010", miscellaneous:400},
68
{date:"5/4/2010", miscellaneous:200},
69
{date:"5/5/2010", miscellaneous:5000}
71
topLegend = function()
81
bottomLegend = function()
91
leftLegend = function()
101
rightLegend = function()
111
testLegend = function()
113
var assert = Y.Assert,
115
legend = chart.get("legend");
116
assert.isTrue(legend instanceof Y.ChartLegend);
119
testLegendPosition = function()
121
var assert = Y.Assert,
123
legend = chart.get("legend");
124
assert.areEqual(legend.get("position"), this.legendPosition);
127
testLegendItemsLength = function()
129
var assert = Y.Assert,
131
legend = chart.get("legend"),
132
chartSC = chart.get("seriesCollection"),
133
legendItems = legend.get("items");
134
assert.areEqual(chartSC.length, legendItems.length);
137
testPieLegendItemsLength = function()
139
var assert = Y.Assert,
141
legend = chart.get("legend"),
142
chartSC = chart.get("seriesCollection")[0].get("markers"),
143
legendItems = legend.get("items");
144
assert.areEqual(chartSC.length, legendItems.length);
147
testLegendItemsText = function()
149
var assert = Y.Assert,
151
legend = chart.get("legend"),
152
chartSC = chart.get("seriesCollection"),
153
legendItems = legend.get("items"),
155
len = chartSC.length;
158
assert.areEqual(chartSC[i].get("displayName"), legendItems.text);
162
testPieLegendItemsText = function()
164
var assert = Y.Assert,
166
legend = chart.get("legend"),
167
series = chart.get("seriesCollection")[0],
169
legendItems = legend.get("items"),
171
len = legendItems.length;
174
displayName = chart.getSeriesItems(series, i).category.value;
175
assert.areEqual(displayName, legendItems[i].text);
179
PieNoLegendTest = new LegendTestTemplate({
181
dataProvider: pieDataValues,
184
name: "Pie No Legend Tests",
186
testNoLegend: function()
188
var assert = Y.Assert,
190
legend = chart.get("legend");
191
assert.isUndefined(legend);
195
PieTopLegendTest = new LegendTestTemplate({
197
dataProvider: pieDataValues,
201
name: "Top Legend Test",
203
testLegend: testLegend
206
PieRightLegendTest = new LegendTestTemplate({
208
dataProvider: pieDataValues,
210
legend: rightLegend()
212
name: "Pie Right Legend Test",
214
testLegend: testLegend
217
PieBottomLegendTest = new LegendTestTemplate({
219
dataProvider: pieDataValues,
221
legend: bottomLegend()
223
name: "Pie Bottom Legend Test",
225
testLegend: testLegend
228
PieLeftLegendTest = new LegendTestTemplate({
230
dataProvider: pieDataValues,
234
name: "Pie Left Legend Test",
236
testLegend: testLegend
239
PieTopLegendPositionTest = new LegendTestTemplate({
241
dataProvider: pieDataValues,
245
name: "Pie Top Legend Position Test",
247
legendPosition: "top",
249
testLegendPosition: testLegendPosition
252
PieRightLegendPositionTest = new LegendTestTemplate({
254
dataProvider: pieDataValues,
256
legend: rightLegend()
258
name: "Pie Right Legend Position Test",
260
legendPosition: "right",
262
testLegend: testLegendPosition
265
PieBottomLegendPositionTest = new LegendTestTemplate({
267
dataProvider: pieDataValues,
269
legend: bottomLegend()
271
name: "Pie Bottom Legend Position Test",
273
legendPosition: "bottom",
275
testLegend: testLegendPosition
278
PieLeftLegendPositionTest = new LegendTestTemplate({
280
dataProvider: pieDataValues,
284
name: "Pie Left Legend Position Test",
286
legendPosition: "left",
288
testLegend: testLegendPosition
291
PieTopLegendItemsLengthTest = new LegendTestTemplate({
293
dataProvider: pieDataValues,
297
name: "Pie Top Legend Items Length Test",
299
testLegend: testPieLegendItemsLength
302
PieRightLegendItemsLengthTest = new LegendTestTemplate({
304
dataProvider: pieDataValues,
306
legend: rightLegend()
308
name: "Pie Right Legend Items Length Test",
310
testLegend: testPieLegendItemsLength
313
PieBottomLegendItemsLengthTest = new LegendTestTemplate({
315
dataProvider: pieDataValues,
317
legend: bottomLegend()
319
name: "Pie Bottom Legend Items Length Test",
321
testLegend: testPieLegendItemsLength
324
PieLeftLegendItemsLengthTest = new LegendTestTemplate({
326
dataProvider: pieDataValues,
330
name: "Pie Left Legend Items Length Test",
332
testLegend: testPieLegendItemsLength
335
PieTopLegendItemsTextTest = new LegendTestTemplate({
337
dataProvider: pieDataValues,
341
name: "Pie Top Legend Items Text Test",
343
testLegend: testPieLegendItemsText
346
PieRightLegendItemsTextTest = new LegendTestTemplate({
348
dataProvider: pieDataValues,
350
legend: rightLegend()
352
name: "Pie Right Legend Items Text Test",
354
testLegend: testPieLegendItemsText
357
PieBottomLegendItemsTextTest = new LegendTestTemplate({
359
dataProvider: pieDataValues,
361
legend: bottomLegend()
363
name: "Pie Bottom Legend Items Text Test",
365
testLegend: testPieLegendItemsText
368
PieLeftLegendItemsTextTest = new LegendTestTemplate({
370
dataProvider: pieDataValues,
374
name: "Pie Left Legend Items Text Test",
376
testLegend: testPieLegendItemsText
379
suite.add(PieNoLegendTest);
380
suite.add(PieTopLegendTest);
381
suite.add(PieRightLegendTest);
382
suite.add(PieBottomLegendTest);
383
suite.add(PieLeftLegendTest);
384
suite.add(PieTopLegendPositionTest);
385
suite.add(PieRightLegendPositionTest);
386
suite.add(PieBottomLegendPositionTest);
387
suite.add(PieLeftLegendPositionTest);
388
suite.add(PieTopLegendItemsLengthTest);
389
suite.add(PieRightLegendItemsLengthTest);
390
suite.add(PieBottomLegendItemsLengthTest);
391
suite.add(PieLeftLegendItemsLengthTest);
392
suite.add(PieTopLegendItemsTextTest);
393
suite.add(PieRightLegendItemsTextTest);
394
suite.add(PieBottomLegendItemsTextTest);
395
suite.add(PieLeftLegendItemsTextTest);
398
var r = new Y.Console({
400
style: 'block' // to anchor in the example content
403
r.render('#testLogger');
406
Y.Test.Runner.setName("Y.Charts.Legend");
407
Y.Test.Runner.add(suite);