##// END OF EJS Templates
Added basic cache tests for new VC...
jeandet -
r11:d2d15e1be6f5
parent child
Show More
@@ -23,10 +23,12 class SimpleRange: public IDataProvider
23 public:
23 public:
24 SimpleRange() = default;
24 SimpleRange() = default;
25
25
26 int callCounter = 0;
26 std::shared_ptr<IDataProvider> clone() const override{ return std::make_shared<SimpleRange>(); }
27 std::shared_ptr<IDataProvider> clone() const override{ return std::make_shared<SimpleRange>(); }
27
28
28 IDataSeries* getData(const DataProviderParameters &parameters) override
29 IDataSeries* getData(const DataProviderParameters &parameters) override
29 {
30 {
31 callCounter+=1;
30 auto tstart = parameters.m_Times[0].m_TStart;
32 auto tstart = parameters.m_Times[0].m_TStart;
31 auto tend = parameters.m_Times[0].m_TEnd;
33 auto tend = parameters.m_Times[0].m_TEnd;
32 std::vector<double> x;
34 std::vector<double> x;
@@ -21,6 +21,8
21 QDate(2018,8,7),QTime(16,00));\
21 QDate(2018,8,7),QTime(16,00));\
22 auto name = vc.createVariable("name", {}, provider, range);\
22 auto name = vc.createVariable("name", {}, provider, range);\
23
23
24 Q_DECLARE_METATYPE(DateTimeRangeTransformation);
25
24
26
25 class TestVariableController2 : public QObject
27 class TestVariableController2 : public QObject
26 {
28 {
@@ -108,6 +110,29 private slots:
108 check_variable_state<RangeType<10>>(var1, range);
110 check_variable_state<RangeType<10>>(var1, range);
109 }
111 }
110
112
113 void testCache_data()
114 {
115 QTest::addColumn<DateTimeRangeTransformation>("transformation");
116 QTest::addColumn<int>("expectedIncrement");
117 QTest::newRow("zoom in") << DateTimeRangeTransformation{0.8,Seconds<double>(0.)} << 0;
118 QTest::newRow("tiny zoom out") << DateTimeRangeTransformation{1.01,Seconds<double>(0.)} << 0;
119 QTest::newRow("tiny pan left") << DateTimeRangeTransformation{1.,Seconds<double>(-100.)} << 0;
120 QTest::newRow("tiny pan right") << DateTimeRangeTransformation{1.,Seconds<double>(100.)} << 0;
121 }
122 void testCache()
123 {
124 TEST_VC2_FIXTURE(10);
125 TEST_VC2_CREATE_DEFAULT_VAR(var1);
126 check_variable_state<RangeType<10>>(var1, range);
127
128 QFETCH(DateTimeRangeTransformation, transformation);
129 QFETCH(int, expectedIncrement);
130 auto initialCount = provider->callCounter;
131 range = range.transform(transformation);
132 vc.changeRange(var1, range);
133 check_variable_state<RangeType<10>>(var1, range);
134 QCOMPARE(provider->callCounter-initialCount, expectedIncrement);
135 }
111 };
136 };
112
137
113
138
General Comments 0
You need to be logged in to leave comments. Login now