##// END OF EJS Templates
Separate the initialization of the properties of the graph of the update of the units of the graph....
Separate the initialization of the properties of the graph of the update of the units of the graph. The initialization of the properties is carried out when adding a variable in the graph, the update of the units is carried out when loading the data of this variable

File last commit:

r343:21cfeb46fc36
r1337:3acf26407503
Show More
TestDataSourceController.cpp
49 lines | 1.6 KiB | text/x-c | CppLexer
/ core / tests / DataSource / TestDataSourceController.cpp
#include <DataSource/DataSourceController.h>
#include <DataSource/DataSourceItem.h>
#include <QObject>
#include <QtTest>
#include <memory>
class TestDataSourceController : public QObject {
Q_OBJECT
private slots:
void testRegisterDataSource();
void testSetDataSourceItem();
};
void TestDataSourceController::testRegisterDataSource()
{
DataSourceController dataSourceController{};
auto uid = dataSourceController.registerDataSource(QStringLiteral("Source1"));
QVERIFY(!uid.isNull());
}
void TestDataSourceController::testSetDataSourceItem()
{
DataSourceController dataSourceController{};
// Spy to test controllers' signals
QSignalSpy signalSpy{&dataSourceController, SIGNAL(dataSourceItemSet(DataSourceItem *))};
// Create a data source item
auto source1Name = QStringLiteral("Source1");
auto source1Item = std::make_unique<DataSourceItem>(DataSourceItemType::PRODUCT, source1Name);
// Add data source item to the controller and check that a signal has been emitted after setting
// data source item in the controller
auto source1Uid = dataSourceController.registerDataSource(source1Name);
dataSourceController.setDataSourceItem(source1Uid, std::move(source1Item));
QCOMPARE(signalSpy.count(), 1);
// Try to a data source item with an unregistered uid and check that no signal has been emitted
auto unregisteredUid = QUuid::createUuid();
dataSourceController.setDataSourceItem(
unregisteredUid, std::make_unique<DataSourceItem>(DataSourceItemType::PRODUCT));
QCOMPARE(signalSpy.count(), 1);
}
QTEST_MAIN(TestDataSourceController)
#include "TestDataSourceController.moc"