##// END OF EJS Templates
Adds zoomIn testcase to tst_chartdataset
Michal Klocek -
r1568:6bbc302df2e4
parent child
Show More
@@ -1,632 +1,629
1 1 /****************************************************************************
2 2 **
3 3 ** Copyright (C) 2012 Digia Plc
4 4 ** All rights reserved.
5 5 ** For any questions to Digia, please use contact form at http://qt.digia.com
6 6 **
7 7 ** This file is part of the Qt Commercial Charts Add-on.
8 8 **
9 9 ** $QT_BEGIN_LICENSE$
10 10 ** Licensees holding valid Qt Commercial licenses may use this file in
11 11 ** accordance with the Qt Commercial License Agreement provided with the
12 12 ** Software or, alternatively, in accordance with the terms contained in
13 13 ** a written agreement between you and Digia.
14 14 **
15 15 ** If you have questions regarding the use of this file, please use
16 16 ** contact form at http://qt.digia.com
17 17 ** $QT_END_LICENSE$
18 18 **
19 19 ****************************************************************************/
20 20
21 21 #include <QtTest/QtTest>
22 22 #include <qabstractaxis.h>
23 23 #include <qvaluesaxis.h>
24 24 #include <qcategoriesaxis.h>
25 25 #include <qlineseries.h>
26 26 #include <qareaseries.h>
27 27 #include <qscatterseries.h>
28 28 #include <qsplineseries.h>
29 29 #include <qpieseries.h>
30 30 #include <qbarseries.h>
31 31 #include <qpercentbarseries.h>
32 32 #include <qstackedbarseries.h>
33 33 #include <private/chartdataset_p.h>
34 34 #include <private/domain_p.h>
35 35 #include <tst_definitions.h>
36 36
37 37 QTCOMMERCIALCHART_USE_NAMESPACE
38 38
39 39 Q_DECLARE_METATYPE(Domain *)
40 40 Q_DECLARE_METATYPE(QAbstractAxis *)
41 41 Q_DECLARE_METATYPE(QAbstractSeries *)
42 42 Q_DECLARE_METATYPE(QList<QAbstractSeries *>)
43 43 Q_DECLARE_METATYPE(QList<QAbstractAxis *>)
44 44 Q_DECLARE_METATYPE(QLineSeries *)
45 45
46 46 class tst_ChartDataSet: public QObject {
47 47
48 48 Q_OBJECT
49 49
50 50 public Q_SLOTS:
51 51 void initTestCase();
52 52 void cleanupTestCase();
53 53 void init();
54 54 void cleanup();
55 55
56 56 private Q_SLOTS:
57 57 void chartdataset_data();
58 58 void chartdataset();
59 59 void addSeries_data();
60 60 void addSeries();
61 61 void setAxisX_data();
62 62 void setAxisX();
63 63 void setAxisY_data();
64 64 void setAxisY();
65 65 void removeSeries_data();
66 66 void removeSeries();
67 67 void removeAllSeries_data();
68 68 void removeAllSeries();
69 69 void seriesCount_data();
70 70 void seriesCount();
71 71 void seriesIndex_data();
72 72 void seriesIndex();
73 /*
74 73 void domain_data();
75 74 void domain();
76 75 void zoomInDomain_data();
77 76 void zoomInDomain();
77 /*
78 78 void zoomOutDomain_data();
79 79 void zoomOutDomain();
80 80 void scrollDomain_data();
81 81 void scrollDomain();
82 82 */
83 83 private:
84 84 ChartDataSet* m_dataset;
85 85 };
86 86
87 87 void tst_ChartDataSet::initTestCase()
88 88 {
89 89 qRegisterMetaType<Domain*>();
90 90 qRegisterMetaType<QAbstractAxis*>();
91 91 qRegisterMetaType<QAbstractSeries*>();
92 92 }
93 93
94 94 void tst_ChartDataSet::cleanupTestCase()
95 95 {
96 96 }
97 97
98 98 void tst_ChartDataSet::init()
99 99 {
100 100 m_dataset = new ChartDataSet();
101 101 }
102 102
103 103
104 104 void tst_ChartDataSet::cleanup()
105 105 {
106 106 QList<QAbstractSeries*> series = m_dataset->series();
107 107 foreach(QAbstractSeries* serie, series)
108 108 {
109 109 m_dataset->removeSeries(serie);
110 110 }
111 111 }
112 112
113 113 void tst_ChartDataSet::chartdataset_data()
114 114 {
115 115 }
116 116
117 117 void tst_ChartDataSet::chartdataset()
118 118 {
119 119 QVERIFY(m_dataset->axisX(0) == 0);
120 120 QVERIFY(m_dataset->axisY(0) == 0);
121 121 QLineSeries* series = new QLineSeries(this);
122 122 QCOMPARE(m_dataset->seriesIndex(series),-1);
123 123 QVERIFY(m_dataset->domain(series) == 0);
124 124 QVERIFY(m_dataset->axisX(series) == 0);
125 125 QVERIFY(m_dataset->axisY(series) == 0);
126 126 }
127 127
128 128
129 129 void tst_ChartDataSet::addSeries_data()
130 130 {
131 131 QTest::addColumn<QAbstractSeries*>("series");
132 132
133 133 QAbstractSeries* line = new QLineSeries(this);
134 134 QAbstractSeries* area = new QAreaSeries(static_cast<QLineSeries*>(line));
135 135 QAbstractSeries* scatter = new QScatterSeries(this);
136 136 QAbstractSeries* spline = new QSplineSeries(this);
137 137 QAbstractSeries* pie = new QPieSeries(this);
138 138 QAbstractSeries* bar = new QBarSeries(this);
139 139 QAbstractSeries* percent = new QPercentBarSeries(this);
140 140 QAbstractSeries* stacked = new QStackedBarSeries(this);
141 141
142 142 QTest::newRow("line") << line;
143 143 QTest::newRow("area") << area;
144 144 QTest::newRow("scatter") << scatter;
145 145 QTest::newRow("spline") << spline;
146 146 QTest::newRow("pie") << pie;
147 147 QTest::newRow("bar") << bar;
148 148 QTest::newRow("percent") << percent;
149 149 QTest::newRow("stacked") << stacked;
150 150 }
151 151
152 152 void tst_ChartDataSet::addSeries()
153 153 {
154 154
155 155 QFETCH(QAbstractSeries*, series);
156 156
157 157 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAbstractAxis*, Domain *)));
158 158 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAbstractAxis*)));
159 159 QSignalSpy spy2(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *, Domain *)));
160 160 QSignalSpy spy3(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
161 161
162 162 m_dataset->addSeries(series);
163 163
164 164 if(series->type()==QAbstractSeries::SeriesTypePie){
165 165 TRY_COMPARE(spy0.count(), 0);
166 166 }else{
167 167 TRY_COMPARE(spy0.count(), 2);
168 168 }
169 169 TRY_COMPARE(spy1.count(), 0);
170 170 TRY_COMPARE(spy2.count(), 1);
171 171 TRY_COMPARE(spy3.count(), 0);
172 172 }
173 173
174 174
175 175 void tst_ChartDataSet::setAxisX_data()
176 176 {
177 177
178 178 QTest::addColumn<QList<QAbstractSeries*> >("seriesList");
179 179 QTest::addColumn<QList<QAbstractAxis*> >("axisList");
180 180 QTest::addColumn<int>("axisCount");
181 181
182 182 QAbstractSeries* line = new QLineSeries(this);
183 183 QAbstractSeries* area = new QAreaSeries(static_cast<QLineSeries*>(line));
184 184 QAbstractSeries* scatter = new QScatterSeries(this);
185 185 QAbstractSeries* spline = new QSplineSeries(this);
186 186 QAbstractSeries* pie = new QPieSeries(this);
187 187 QAbstractSeries* bar = new QBarSeries(this);
188 188 QAbstractSeries* percent = new QPercentBarSeries(this);
189 189 QAbstractSeries* stacked = new QStackedBarSeries(this);
190 190
191 191 QTest::newRow("line,spline,scatter: axis 0 axis1 axis 2")
192 192 << (QList<QAbstractSeries*>() << line << spline << scatter)
193 193 << (QList<QAbstractAxis*>() << new QValuesAxis(this) << new QValuesAxis(this) << new QValuesAxis(this)) << 3;
194 194
195 195 QTest::newRow("area: axis 0") << (QList<QAbstractSeries*>() << area)
196 196 << (QList<QAbstractAxis*>() << new QValuesAxis(this)) << 1;
197 197
198 198 QList<QAbstractAxis*> axes0;
199 199 axes0 << new QValuesAxis(this) << new QValuesAxis(this);
200 200 axes0 << axes0.last();
201 201 QTest::newRow("line,spline,scatter: axis 0 axis1 axis 1")
202 202 << (QList<QAbstractSeries*>() << line << spline << scatter)
203 203 << axes0 << 2;
204 204 //TODO: add more test cases
205 205 }
206 206
207 207 void tst_ChartDataSet::setAxisX()
208 208 {
209 209 QFETCH(QList<QAbstractSeries*>, seriesList);
210 210 QFETCH(QList<QAbstractAxis*>, axisList);
211 211 QFETCH(int, axisCount);
212 212
213 213 Q_ASSERT(seriesList.count() == axisList.count());
214 214
215 215 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAbstractAxis *,Domain*)));
216 216 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAbstractAxis *)));
217 217 QSignalSpy spy2(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *,Domain*)));
218 218 QSignalSpy spy3(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
219 219
220 220 foreach(QAbstractSeries* series, seriesList){
221 221 m_dataset->addSeries(series);
222 222 }
223 223
224 224 TRY_COMPARE(spy0.count(), seriesList.count()*2);
225 225 TRY_COMPARE(spy1.count(), 0);
226 226 TRY_COMPARE(spy2.count(), seriesList.count());
227 227 TRY_COMPARE(spy3.count(), 0);
228 228
229 229 QSignalSpy spy4(m_dataset, SIGNAL(axisAdded(QAbstractAxis*,Domain*)));
230 230 QSignalSpy spy5(m_dataset, SIGNAL(axisRemoved(QAbstractAxis*)));
231 231 QSignalSpy spy6(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *,Domain*)));
232 232 QSignalSpy spy7(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
233 233
234 234 for(int i=0 ; i < seriesList.count(); i++){
235 235 m_dataset->setAxisX(seriesList.at(i),axisList.at(i));
236 236 }
237 237
238 238 TRY_COMPARE(spy4.count(), axisCount);
239 239 TRY_COMPARE(spy5.count(), seriesList.count());
240 240 TRY_COMPARE(spy6.count(), 0);
241 241 TRY_COMPARE(spy7.count(), 0);
242 242
243 243 for(int i=0 ; i < seriesList.count(); i++){
244 244 QVERIFY(m_dataset->axisX(seriesList.at(i)) == axisList.at(i));
245 245 }
246 246 }
247 247
248 248 void tst_ChartDataSet::setAxisY_data()
249 249 {
250 250 setAxisX_data();
251 251 }
252 252
253 253 void tst_ChartDataSet::setAxisY()
254 254 {
255 255 QFETCH(QList<QAbstractSeries*>, seriesList);
256 256 QFETCH(QList<QAbstractAxis*>, axisList);
257 257 QFETCH(int, axisCount);
258 258
259 259 Q_ASSERT(seriesList.count() == axisList.count());
260 260
261 261 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAbstractAxis*,Domain*)));
262 262 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAbstractAxis*)));
263 263 QSignalSpy spy2(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *,Domain*)));
264 264 QSignalSpy spy3(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
265 265
266 266 foreach(QAbstractSeries* series, seriesList){
267 267 m_dataset->addSeries(series);
268 268 }
269 269
270 270 TRY_COMPARE(spy0.count(), seriesList.count()*2);
271 271 TRY_COMPARE(spy1.count(), 0);
272 272 TRY_COMPARE(spy2.count(), seriesList.count());
273 273 TRY_COMPARE(spy3.count(), 0);
274 274
275 275 QSignalSpy spy4(m_dataset, SIGNAL(axisAdded(QAbstractAxis*,Domain*)));
276 276 QSignalSpy spy5(m_dataset, SIGNAL(axisRemoved(QAbstractAxis*)));
277 277 QSignalSpy spy6(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *,Domain*)));
278 278 QSignalSpy spy7(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
279 279
280 280 for(int i=0 ; i < seriesList.count(); i++){
281 281 m_dataset->setAxisY(seriesList.at(i),axisList.at(i));
282 282 }
283 283
284 284 TRY_COMPARE(spy4.count(), axisCount);
285 285 TRY_COMPARE(spy5.count(), seriesList.count());
286 286 TRY_COMPARE(spy6.count(), 0);
287 287 TRY_COMPARE(spy7.count(), 0);
288 288
289 289 for(int i=0 ; i < seriesList.count(); i++){
290 290 QVERIFY(m_dataset->axisY(seriesList.at(i)) == axisList.at(i));
291 291 }
292 292 }
293 293
294 294 void tst_ChartDataSet::removeSeries_data()
295 295 {
296 296 addSeries_data();
297 297 }
298 298
299 299 void tst_ChartDataSet::removeSeries()
300 300 {
301 301 QFETCH(QAbstractSeries*, series);
302 302
303 303 m_dataset->addSeries(series);
304 304
305 305 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAbstractAxis*, Domain *)));
306 306 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAbstractAxis*)));
307 307 QSignalSpy spy2(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *, Domain *)));
308 308 QSignalSpy spy3(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
309 309
310 310 m_dataset->removeSeries(series);
311 311
312 312 TRY_COMPARE(spy0.count(), 0);
313 313 if (series->type() == QAbstractSeries::SeriesTypePie) {
314 314 TRY_COMPARE(spy1.count(), 0);
315 315 }
316 316 else {
317 317 TRY_COMPARE(spy1.count(), 2);
318 318 }
319 319 TRY_COMPARE(spy2.count(), 0);
320 320 TRY_COMPARE(spy3.count(), 1);
321 321 }
322 322
323 323 void tst_ChartDataSet::removeAllSeries_data()
324 324 {
325 325 QTest::addColumn<QList<QAbstractSeries*> >("seriesList");
326 326 QTest::addColumn<QList<QAbstractAxis*> >("axisList");
327 327 QTest::addColumn<int>("axisCount");
328 328
329 329 QTest::newRow("line,spline,scatter: axis 0 axis1 axis 2")
330 330 << (QList<QAbstractSeries*>() << new QLineSeries(this) << new QSplineSeries(this)
331 331 << new QScatterSeries(this))
332 332 << (QList<QAbstractAxis*>() << new QValuesAxis(this) << new QValuesAxis(this)
333 333 << new QValuesAxis(this)) << 3;
334 334 //TODO:
335 335 }
336 336
337 337 void tst_ChartDataSet::removeAllSeries()
338 338 {
339 339 QFETCH(QList<QAbstractSeries*>, seriesList);
340 340 QFETCH(QList<QAbstractAxis*>, axisList);
341 341 QFETCH(int, axisCount);
342 342
343 343 foreach(QAbstractSeries* series, seriesList) {
344 344 m_dataset->addSeries(series);
345 345 }
346 346
347 347 for (int i = 0; i < seriesList.count(); i++) {
348 348 m_dataset->setAxisX(seriesList.at(i), axisList.at(i));
349 349 }
350 350
351 351 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAbstractAxis *, Domain *)));
352 352 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAbstractAxis *)));
353 353 QSignalSpy spy2(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *, Domain *)));
354 354 QSignalSpy spy3(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
355 355
356 356 m_dataset->removeAllSeries();
357 357
358 358 TRY_COMPARE(spy0.count(), 0);
359 359 TRY_COMPARE(spy1.count(), axisCount + seriesList.count());
360 360 TRY_COMPARE(spy2.count(), 0);
361 361 TRY_COMPARE(spy3.count(), seriesList.count());
362 362 }
363 363
364 364
365 365 void tst_ChartDataSet::seriesCount_data()
366 366 {
367 367 QTest::addColumn<QList<QAbstractSeries*> >("seriesList");
368 368 QTest::addColumn<int>("seriesCount");
369 369
370 370 QTest::newRow("line,line, line, spline 3") << (QList<QAbstractSeries*>() << new QLineSeries(this) << new QLineSeries(this) << new QLineSeries(this) << new QSplineSeries(this) ) << 3;
371 371 QTest::newRow("scatter,scatter, line, line 2") << (QList<QAbstractSeries*>() << new QScatterSeries(this) << new QScatterSeries(this) << new QLineSeries(this) << new QLineSeries(this) ) << 2;
372 372 }
373 373
374 374 void tst_ChartDataSet::seriesCount()
375 375 {
376 376 QFETCH(QList<QAbstractSeries*>, seriesList);
377 377 QFETCH(int, seriesCount);
378 378
379 379 foreach(QAbstractSeries* series, seriesList){
380 380 m_dataset->addSeries(series);
381 381 }
382 382
383 383 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAbstractAxis *, Domain *)));
384 384 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAbstractAxis *)));
385 385 QSignalSpy spy2(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *, Domain *)));
386 386 QSignalSpy spy3(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
387 387
388 388 QCOMPARE(m_dataset->seriesCount(seriesList.at(0)->type()),seriesCount);
389 389 TRY_COMPARE(spy0.count(), 0);
390 390 TRY_COMPARE(spy1.count(), 0);
391 391 TRY_COMPARE(spy2.count(), 0);
392 392 TRY_COMPARE(spy3.count(), 0);
393 393 }
394 394
395 395 void tst_ChartDataSet::seriesIndex_data()
396 396 {
397 397 QTest::addColumn<QList<QAbstractSeries*> >("seriesList");
398 398
399 399 QTest::newRow("line,line, line, spline") << (QList<QAbstractSeries*>() << new QLineSeries(this) << new QLineSeries(this) << new QLineSeries(this) << new QSplineSeries(this) );
400 400 QTest::newRow("scatter,scatter, line, line") << (QList<QAbstractSeries*>() << new QScatterSeries(this) << new QScatterSeries(this) << new QLineSeries(this) << new QLineSeries(this) );
401 401 }
402 402
403 403 void tst_ChartDataSet::seriesIndex()
404 404 {
405 405
406 406 QFETCH(QList<QAbstractSeries*>, seriesList);
407 407
408 408 foreach(QAbstractSeries* series, seriesList) {
409 409 m_dataset->addSeries(series);
410 410 }
411 411
412 412 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAbstractAxis *,Domain*)));
413 413 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAbstractAxis *)));
414 414 QSignalSpy spy2(m_dataset, SIGNAL(seriesAdded(QAbstractSeries*,Domain*)));
415 415 QSignalSpy spy3(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries*)));
416 416
417 417 for (int i = 0; i < seriesList.count(); i++) {
418 418 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), i);
419 419 }
420 420
421 421 TRY_COMPARE(spy0.count(), 0);
422 422 TRY_COMPARE(spy1.count(), 0);
423 423 TRY_COMPARE(spy2.count(), 0);
424 424 TRY_COMPARE(spy3.count(), 0);
425 425
426 426 foreach(QAbstractSeries* series, seriesList) {
427 427 m_dataset->removeSeries(series);
428 428 }
429 429
430 430 for (int i = 0; i < seriesList.count(); i++) {
431 431 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), -1);
432 432 }
433 433
434 434 foreach(QAbstractSeries* series, seriesList) {
435 435 m_dataset->addSeries(series);
436 436 }
437 437
438 438 for (int i = 0; i < seriesList.count(); i++) {
439 439 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), i);
440 440 }
441 441
442 442 m_dataset->removeSeries(seriesList.at(1));
443 443
444 444 for (int i = 0; i < seriesList.count(); i++) {
445 445 if (i != 1)
446 446 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), i);
447 447 else
448 448 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), -1);
449 449 }
450 450
451 451 m_dataset->addSeries(seriesList.at(1));
452 452
453 453 for (int i = 0; i < seriesList.count(); i++) {
454 454 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), i);
455 455 }
456 456
457 457 m_dataset->removeSeries(seriesList.at(2));
458 458
459 459 for (int i = 0; i < seriesList.count(); i++) {
460 460 if (i != 2)
461 461 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), i);
462 462 else
463 463 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), -1);
464 464 }
465 465
466 466 m_dataset->removeSeries(seriesList.at(0));
467 467
468 468 for (int i = 0; i < seriesList.count(); i++) {
469 469 if (i != 2 && i != 0)
470 470 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), i);
471 471 else
472 472 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), -1);
473 473 }
474 474
475 475 m_dataset->addSeries(seriesList.at(2));
476 476 m_dataset->addSeries(seriesList.at(0));
477 477
478 478 for (int i = 0; i < seriesList.count(); i++) {
479 479 if (i == 2)
480 480 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), 0);
481 481 else if (i == 0)
482 482 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), 2);
483 483 else
484 484 QCOMPARE(m_dataset->seriesIndex(seriesList.at(i)), i);
485 485 }
486 486
487 487 }
488 /*
488
489 489 void tst_ChartDataSet::domain_data()
490 490 {
491 491 addSeries_data();
492 492 }
493 493
494 494 void tst_ChartDataSet::domain()
495 495 {
496 QFETCH(QLineSeries*, series0);
497 QFETCH(QAxis*, axis0);
498 QFETCH(QLineSeries*, series1);
499 QFETCH(QAxis*, axis1);
500 QFETCH(QLineSeries*, series2);
501 QFETCH(QAxis*, axis2);
502 QFETCH(int, axisCount);
503 Q_UNUSED(axisCount);
504
505 m_dataset->addSeries(series0, axis0);
506 m_dataset->addSeries(series1, axis1);
507 m_dataset->addSeries(series2, axis2);
496 QFETCH(QAbstractSeries*, series);
508 497
509 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAxis *, Domain *)));
510 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAxis *)));
498 QSignalSpy spy0(m_dataset, SIGNAL(axisAdded(QAbstractAxis *, Domain *)));
499 QSignalSpy spy1(m_dataset, SIGNAL(axisRemoved(QAbstractAxis *)));
511 500 QSignalSpy spy2(m_dataset, SIGNAL(seriesAdded(QAbstractSeries *, Domain *)));
512 501 QSignalSpy spy3(m_dataset, SIGNAL(seriesRemoved(QAbstractSeries *)));
513 502
514 QVERIFY(m_dataset->domain(axis0)==m_dataset->domain(series0));
515 QVERIFY(m_dataset->domain(axis1)==m_dataset->domain(series1));
516 QVERIFY(m_dataset->domain(axis2)==m_dataset->domain(series2));
517 TRY_COMPARE(spy0.count(), 0);
503 m_dataset->addSeries(series);
504 QVERIFY(m_dataset->domain(series));
505
506 if(series->type()!=QAbstractSeries::SeriesTypePie){
507 TRY_COMPARE(spy0.count(), 2);
508 }
509
518 510 TRY_COMPARE(spy1.count(), 0);
519 TRY_COMPARE(spy2.count(), 0);
511 TRY_COMPARE(spy2.count(), 1);
512
513 QList<QVariant> arguments = spy2.takeFirst();
514 Domain *domain = (Domain *) arguments.at(1).value<Domain *>();
515 QVERIFY(m_dataset->domain(series) == domain);
516
520 517 TRY_COMPARE(spy3.count(), 0);
518
521 519 }
522 520
523 521 void tst_ChartDataSet::zoomInDomain_data()
524 522 {
525 addSeries_data();
523 QTest::addColumn<QList<QAbstractSeries*> >("seriesList");
524 QTest::newRow("line,line, line, spline") << (QList<QAbstractSeries*>() << new QLineSeries(this) << new QLineSeries(this) << new QLineSeries(this) << new QSplineSeries(this) );
526 525 }
527 526
528 527 void tst_ChartDataSet::zoomInDomain()
529 528 {
530 QFETCH(QLineSeries*, series0);
531 QFETCH(QAxis*, axis0);
532 QFETCH(QLineSeries*, series1);
533 QFETCH(QAxis*, axis1);
534 QFETCH(QLineSeries*, series2);
535 QFETCH(QAxis*, axis2);
536 QFETCH(int, axisCount);
537 Q_UNUSED(axisCount);
529 QFETCH(QList<QAbstractSeries*>, seriesList);
538 530
539 m_dataset->addSeries(series0, axis0);
540 m_dataset->addSeries(series1, axis1);
541 m_dataset->addSeries(series2, axis2);
531 foreach(QAbstractSeries* series, seriesList) {
532 m_dataset->addSeries(series);
533 }
542 534
543 Domain* domain0 = m_dataset->domain(series0);
544 Domain* domain1 = m_dataset->domain(series1);
545 Domain* domain2 = m_dataset->domain(series2);
535 for (int i = 1; i < seriesList.count(); i++) {
536 m_dataset->setAxisX(seriesList.at(i), m_dataset->axisX(seriesList.at(0)));
537 }
546 538
547 QSignalSpy spy0(domain0, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
548 QSignalSpy spy1(domain1, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
549 QSignalSpy spy2(domain2, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
539 QList<QSignalSpy*> spyList;
550 540
551 m_dataset->zoomInDomain(QRect(0,0,100,100),QSize(1000,1000));
541 foreach(QAbstractSeries* series, seriesList) {
542 spyList << new QSignalSpy(m_dataset->domain(series),SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
543 }
552 544
553 TRY_COMPARE(spy0.count(), 1);
554 TRY_COMPARE(spy1.count(), 1);
555 TRY_COMPARE(spy2.count(), 1);
545 m_dataset->zoomInDomain(QRect(0, 0, 100, 100), QSize(1000, 1000));
546
547 foreach(QSignalSpy* spy, spyList) {
548 TRY_COMPARE(spy->count(), 1);
549 }
550
551 qDeleteAll(spyList);
556 552 }
557 553
554 /*
558 555 void tst_ChartDataSet::zoomOutDomain_data()
559 556 {
560 557 addSeries_data();
561 558 }
562 559
563 560 void tst_ChartDataSet::zoomOutDomain()
564 561 {
565 562 QFETCH(QLineSeries*, series0);
566 563 QFETCH(QAxis*, axis0);
567 564 QFETCH(QLineSeries*, series1);
568 565 QFETCH(QAxis*, axis1);
569 566 QFETCH(QLineSeries*, series2);
570 567 QFETCH(QAxis*, axis2);
571 568 QFETCH(int, axisCount);
572 569
573 570 Q_UNUSED(axisCount);
574 571
575 572 m_dataset->addSeries(series0, axis0);
576 573 m_dataset->addSeries(series1, axis1);
577 574 m_dataset->addSeries(series2, axis2);
578 575
579 576 Domain* domain0 = m_dataset->domain(series0);
580 577 Domain* domain1 = m_dataset->domain(series1);
581 578 Domain* domain2 = m_dataset->domain(series2);
582 579
583 580 QSignalSpy spy0(domain0, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
584 581 QSignalSpy spy1(domain1, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
585 582 QSignalSpy spy2(domain2, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
586 583
587 584 m_dataset->zoomOutDomain(QRect(0,0,100,100),QSize(1000,1000));
588 585
589 586 TRY_COMPARE(spy0.count(), 1);
590 587 TRY_COMPARE(spy1.count(), 1);
591 588 TRY_COMPARE(spy2.count(), 1);
592 589 }
593 590
594 591 void tst_ChartDataSet::scrollDomain_data()
595 592 {
596 593 addSeries_data();
597 594 }
598 595
599 596 void tst_ChartDataSet::scrollDomain()
600 597 {
601 598 QFETCH(QLineSeries*, series0);
602 599 QFETCH(QAxis*, axis0);
603 600 QFETCH(QLineSeries*, series1);
604 601 QFETCH(QAxis*, axis1);
605 602 QFETCH(QLineSeries*, series2);
606 603 QFETCH(QAxis*, axis2);
607 604 QFETCH(int, axisCount);
608 605
609 606 Q_UNUSED(axisCount);
610 607
611 608 m_dataset->addSeries(series0, axis0);
612 609 m_dataset->addSeries(series1, axis1);
613 610 m_dataset->addSeries(series2, axis2);
614 611
615 612 Domain* domain0 = m_dataset->domain(series0);
616 613 Domain* domain1 = m_dataset->domain(series1);
617 614 Domain* domain2 = m_dataset->domain(series2);
618 615
619 616 QSignalSpy spy0(domain0, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
620 617 QSignalSpy spy1(domain1, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
621 618 QSignalSpy spy2(domain2, SIGNAL(domainChanged(qreal,qreal,qreal,qreal)));
622 619
623 620 m_dataset->scrollDomain(10,10,QSize(1000,1000));
624 621
625 622 TRY_COMPARE(spy0.count(), 1);
626 623 TRY_COMPARE(spy1.count(), 1);
627 624 TRY_COMPARE(spy2.count(), 1);
628 625 }
629 626 */
630 627 QTEST_MAIN(tst_ChartDataSet)
631 628 #include "tst_chartdataset.moc"
632 629
General Comments 0
You need to be logged in to leave comments. Login now