##// END OF EJS Templates
Chages 'find' to 'contains' in src.pro to make windows linux build the same
Chages 'find' to 'contains' in src.pro to make windows linux build the same

File last commit:

r439:86afa1b4ff5f
r711:431503c9e7b7
Show More
tst_chartdataset.cpp
277 lines | 8.2 KiB | text/x-c | CppLexer
Michal Klocek
Adds chartdata unit test
r224 #include <QtTest/QtTest>
#include <qchartaxis.h>
Michal Klocek
Rename QLineChartSeries to QLineSeries
r349 #include <qlineseries.h>
Michal Klocek
Adds chartdata unit test
r224 #include <private/chartdataset_p.h>
#include <private/domain_p.h>
QTCOMMERCIALCHART_USE_NAMESPACE
Michal Klocek
Refactor domain model...
r439 Q_DECLARE_METATYPE(Domain*)
Michal Klocek
Adds chartdata unit test
r224 Q_DECLARE_METATYPE(QChartAxis*)
Michal Klocek
Rename QChartSeries to QSeries
r360 Q_DECLARE_METATYPE(QSeries*)
Michal Klocek
Rename QLineChartSeries to QLineSeries
r349 Q_DECLARE_METATYPE(QLineSeries*)
Michal Klocek
Adds chartdata unit test
r224
class tst_ChartDataSet: public QObject {
Q_OBJECT
public slots:
void initTestCase();
void cleanupTestCase();
void init();
void cleanup();
private slots:
void chartdataset_data();
void chartdataset();
void addSeries_data();
void addSeries();
void removeSeries_data();
void removeSeries();
Michal Klocek
Adds RemoveAllSeries method to API
r258 void removeAllSeries_data();
void removeAllSeries();
Michal Klocek
Refactor domain model...
r439 void axisY_data();
void axisY();
Michal Klocek
Adds chartdata unit test
r224 };
void tst_ChartDataSet::initTestCase()
{
Michal Klocek
Refactor domain model...
r439 qRegisterMetaType<Domain*>();
Michal Klocek
Adds chartdata unit test
r224 qRegisterMetaType<QChartAxis*>();
Michal Klocek
Rename QChartSeries to QSeries
r360 qRegisterMetaType<QSeries*>();
Michal Klocek
Adds chartdata unit test
r224 }
void tst_ChartDataSet::cleanupTestCase()
{
}
void tst_ChartDataSet::init()
{
}
void tst_ChartDataSet::cleanup()
{
}
void tst_ChartDataSet::chartdataset_data()
{
}
void tst_ChartDataSet::chartdataset()
{
ChartDataSet dataSet;
QVERIFY2(dataSet.axisX(), "Missing axisX.");
QVERIFY2(dataSet.axisY(), "Missing axisY.");
//check if not dangling pointer
dataSet.axisX()->objectName();
dataSet.axisY()->objectName();
}
void tst_ChartDataSet::addSeries_data()
{
Michal Klocek
Refactor domain model...
r439 QTest::addColumn<QLineSeries*>("series0");
QTest::addColumn<QChartAxis*>("axis0");
QTest::addColumn<QLineSeries*>("series1");
QTest::addColumn<QChartAxis*>("axis1");
QTest::addColumn<QLineSeries*>("series2");
QTest::addColumn<QChartAxis*>("axis2");
QTest::addColumn<int>("axisCount");
QLineSeries* series0 = new QLineSeries(this);
QLineSeries* series1 = new QLineSeries(this);
QLineSeries* series2 = new QLineSeries(this);
QChartAxis* axis0 = new QChartAxis(this);
QChartAxis* axis1 = new QChartAxis(this);
QChartAxis* axis2 = new QChartAxis(this);
QTest::newRow("default axis Y: series0,series1,series2") << series0 << (QChartAxis*)0 << series1 << (QChartAxis*)0 << series2 << (QChartAxis*)0 << 2;
QTest::newRow("default axis Y: series0, axis 0: series1,series2") << series0 << (QChartAxis*)0 << series1 << axis0 << series2 << axis0 << 3;
QTest::newRow("axis0: series0, axis1: series1, axis2: series2") << series0 << axis0 << series1 << axis1 << series2 << axis2 << 4;
Michal Klocek
Adds chartdata unit test
r224 }
void tst_ChartDataSet::addSeries()
{
Michal Klocek
Refactor domain model...
r439 QFETCH(QLineSeries*, series0);
QFETCH(QChartAxis*, axis0);
QFETCH(QLineSeries*, series1);
QFETCH(QChartAxis*, axis1);
QFETCH(QLineSeries*, series2);
QFETCH(QChartAxis*, axis2);
QFETCH(int, axisCount);
Michal Klocek
Fix unit test
r411
ChartDataSet dataSet;
Michal Klocek
Refactor domain model...
r439 QSignalSpy spy0(&dataSet, SIGNAL(axisAdded(QChartAxis*,Domain*)));
QSignalSpy spy1(&dataSet, SIGNAL(axisRemoved(QChartAxis*)));
QSignalSpy spy2(&dataSet, SIGNAL(seriesAdded(QSeries*,Domain*)));
QSignalSpy spy3(&dataSet, SIGNAL(seriesRemoved(QSeries*)));
Michal Klocek
Fix unit test
r411
Michal Klocek
Refactor domain model...
r439 dataSet.addSeries(series0,axis0);
dataSet.addSeries(series1,axis1);
dataSet.addSeries(series2,axis2);
Michal Klocek
Fix unit test
r411
QCOMPARE(spy0.count(), axisCount);
Michal Klocek
Refactor domain model...
r439 QCOMPARE(spy1.count(), 0);
QCOMPARE(spy2.count(), 3);
QCOMPARE(spy3.count(), 0);
Michal Klocek
Adds chartdata unit test
r224
}
Michal Klocek
Refactor domain model...
r439 void tst_ChartDataSet::removeSeries_data()
Michal Klocek
Adds chartdata unit test
r224 {
Michal Klocek
Refactor domain model...
r439 QTest::addColumn<QLineSeries*>("series0");
QTest::addColumn<QChartAxis*>("axis0");
QTest::addColumn<QLineSeries*>("series1");
QTest::addColumn<QChartAxis*>("axis1");
QTest::addColumn<QLineSeries*>("series2");
QTest::addColumn<QChartAxis*>("axis2");
QTest::addColumn<int>("axisCount");
QLineSeries* series0 = new QLineSeries(this);
QLineSeries* series1 = new QLineSeries(this);
QLineSeries* series2 = new QLineSeries(this);
QChartAxis* axis0 = new QChartAxis(this);
QChartAxis* axis1 = new QChartAxis(this);
QChartAxis* axis2 = new QChartAxis(this);
QTest::newRow("default axis Y: series0,series1,series2") << series0 << (QChartAxis*) 0
<< series1 << (QChartAxis*) 0 << series2 << (QChartAxis*) 0 << 2;
QTest::newRow("default axis Y: series0, axis 0: series1,series2") << series0 << (QChartAxis*) 0
<< series1 << axis0 << series2 << axis0 << 3;
QTest::newRow("axis0: series0, axis1: series1, axis2: series2") << series0 << axis0 << series1
<< axis1 << series2 << axis2 << 4;
Michal Klocek
Adds chartdata unit test
r224 }
Michal Klocek
Refactor domain model...
r439 void tst_ChartDataSet::removeSeries()
Michal Klocek
Adds chartdata unit test
r224 {
Michal Klocek
Refactor domain model...
r439 QFETCH(QLineSeries*, series0);
QFETCH(QChartAxis*, axis0);
QFETCH(QLineSeries*, series1);
QFETCH(QChartAxis*, axis1);
QFETCH(QLineSeries*, series2);
QFETCH(QChartAxis*, axis2);
QFETCH(int, axisCount);
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 ChartDataSet dataSet;
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 dataSet.addSeries(series0,axis0);
dataSet.addSeries(series1,axis1);
dataSet.addSeries(series2,axis2);
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 QSignalSpy spy0(&dataSet, SIGNAL(axisAdded(QChartAxis*,Domain*)));
QSignalSpy spy1(&dataSet, SIGNAL(axisRemoved(QChartAxis*)));
QSignalSpy spy2(&dataSet, SIGNAL(seriesAdded(QSeries*,Domain*)));
QSignalSpy spy3(&dataSet, SIGNAL(seriesRemoved(QSeries*)));
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 dataSet.removeSeries(series0);
dataSet.removeSeries(series1);
dataSet.removeSeries(series2);
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 QCOMPARE(spy0.count(), 0);
QCOMPARE(spy1.count(), axisCount);
QCOMPARE(spy2.count(), 0);
QCOMPARE(spy3.count(), 3);
Michal Klocek
Adds chartdata unit test
r224 }
Michal Klocek
Refactor domain model...
r439 void tst_ChartDataSet::removeAllSeries_data()
Michal Klocek
Adds chartdata unit test
r224 {
Michal Klocek
Refactor domain model...
r439 QTest::addColumn<QLineSeries*>("series0");
QTest::addColumn<QChartAxis*>("axis0");
QTest::addColumn<QLineSeries*>("series1");
QTest::addColumn<QChartAxis*>("axis1");
QTest::addColumn<QLineSeries*>("series2");
QTest::addColumn<QChartAxis*>("axis2");
QTest::addColumn<int>("axisCount");
QLineSeries* series0 = new QLineSeries(this);
QLineSeries* series1 = new QLineSeries(this);
QLineSeries* series2 = new QLineSeries(this);
QChartAxis* axis0 = new QChartAxis(this);
QChartAxis* axis1 = new QChartAxis(this);
QChartAxis* axis2 = new QChartAxis(this);
QTest::newRow("default axis Y: series0,series1,series2") << series0 << (QChartAxis*) 0
<< series1 << (QChartAxis*) 0 << series2 << (QChartAxis*) 0 << 2;
QTest::newRow("default axis Y: series0, axis 0: series1,series2") << series0 << (QChartAxis*) 0
<< series1 << axis0 << series2 << axis0 << 3;
QTest::newRow("axis0: series0, axis1: series1, axis2: series2") << series0 << axis0 << series1
<< axis1 << series2 << axis2 << 4;
Michal Klocek
Adds chartdata unit test
r224 }
Michal Klocek
Refactor domain model...
r439 void tst_ChartDataSet::removeAllSeries()
Michal Klocek
Adds chartdata unit test
r224 {
Michal Klocek
Refactor domain model...
r439 QFETCH(QLineSeries*, series0);
QFETCH(QChartAxis*, axis0);
QFETCH(QLineSeries*, series1);
QFETCH(QChartAxis*, axis1);
QFETCH(QLineSeries*, series2);
QFETCH(QChartAxis*, axis2);
QFETCH(int, axisCount);
ChartDataSet dataSet;
dataSet.addSeries(series0,axis0);
dataSet.addSeries(series1,axis1);
dataSet.addSeries(series2,axis2);
QSignalSpy spy0(&dataSet, SIGNAL(axisAdded(QChartAxis*,Domain*)));
QSignalSpy spy1(&dataSet, SIGNAL(axisRemoved(QChartAxis*)));
QSignalSpy spy2(&dataSet, SIGNAL(seriesAdded(QSeries*,Domain*)));
QSignalSpy spy3(&dataSet, SIGNAL(seriesRemoved(QSeries*)));
dataSet.removeAllSeries();
QCOMPARE(spy0.count(), 0);
QCOMPARE(spy1.count(), axisCount);
QCOMPARE(spy2.count(), 0);
QCOMPARE(spy3.count(), 3);
Michal Klocek
Adds chartdata unit test
r224 }
Michal Klocek
Refactor domain model...
r439 void tst_ChartDataSet::axisY_data()
Michal Klocek
Adds chartdata unit test
r224 {
Michal Klocek
Refactor domain model...
r439 QTest::addColumn<QChartAxis*>("axis0");
QTest::addColumn<QChartAxis*>("axis1");
QTest::addColumn<QChartAxis*>("axis2");
QTest::newRow("1 defualt, 2 optional") << (QChartAxis*)0 << new QChartAxis() << new QChartAxis();
QTest::newRow("3 optional") << new QChartAxis() << new QChartAxis() << new QChartAxis();
Michal Klocek
Adds chartdata unit test
r224 }
Michal Klocek
Refactor domain model...
r439 void tst_ChartDataSet::axisY()
Michal Klocek
Adds chartdata unit test
r224 {
Michal Klocek
Refactor domain model...
r439 QFETCH(QChartAxis*, axis0);
QFETCH(QChartAxis*, axis1);
QFETCH(QChartAxis*, axis2);
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 ChartDataSet dataSet;
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 QChartAxis* defaultAxisY = dataSet.axisY();
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 QVERIFY2(defaultAxisY, "Missing axisY.");
Michal Klocek
Adds chartdata unit test
r224
Michal Klocek
Refactor domain model...
r439 QLineSeries* series0 = new QLineSeries();
dataSet.addSeries(series0,axis0);
Michal Klocek
Adds RemoveAllSeries method to API
r258
Michal Klocek
Refactor domain model...
r439 QLineSeries* series1 = new QLineSeries();
dataSet.addSeries(series1,axis1);
Michal Klocek
Adds RemoveAllSeries method to API
r258
Michal Klocek
Refactor domain model...
r439 QLineSeries* series2 = new QLineSeries();
dataSet.addSeries(series2,axis2);
Michal Klocek
Adds RemoveAllSeries method to API
r258
Michal Klocek
Refactor domain model...
r439 if(!axis0) axis0=defaultAxisY ;
if(!axis1) axis1=defaultAxisY ;
if(!axis2) axis2=defaultAxisY ;
Michal Klocek
Adds RemoveAllSeries method to API
r258
Michal Klocek
Refactor domain model...
r439 QVERIFY(dataSet.axisY(series0) == axis0);
QVERIFY(dataSet.axisY(series1) == axis1);
QVERIFY(dataSet.axisY(series2) == axis2);
Michal Klocek
Adds RemoveAllSeries method to API
r258
}
Michal Klocek
Adds chartdata unit test
r224 QTEST_MAIN(tst_ChartDataSet)
#include "tst_chartdataset.moc"