1 #include <QTest> 2 #include "TestUtil.h" 3 4 #include "meta/Index.h" 5 #include "meta/VersionList.h" 6 #include "Env.h" 7 8 class IndexTest : public QObject 9 { 10 Q_OBJECT 11 private 12 slots: test_isProvidedByEnv()13 void test_isProvidedByEnv() 14 { 15 QVERIFY(ENV.metadataIndex()); 16 QCOMPARE(ENV.metadataIndex(), ENV.metadataIndex()); 17 } 18 test_hasUid_and_getList()19 void test_hasUid_and_getList() 20 { 21 Meta::Index windex({std::make_shared<Meta::VersionList>("list1"), std::make_shared<Meta::VersionList>("list2"), std::make_shared<Meta::VersionList>("list3")}); 22 QVERIFY(windex.hasUid("list1")); 23 QVERIFY(!windex.hasUid("asdf")); 24 QVERIFY(windex.get("list2") != nullptr); 25 QCOMPARE(windex.get("list2")->uid(), QString("list2")); 26 QVERIFY(windex.get("adsf") != nullptr); 27 } 28 test_merge()29 void test_merge() 30 { 31 Meta::Index windex({std::make_shared<Meta::VersionList>("list1"), std::make_shared<Meta::VersionList>("list2"), std::make_shared<Meta::VersionList>("list3")}); 32 QCOMPARE(windex.lists().size(), 3); 33 windex.merge(std::shared_ptr<Meta::Index>(new Meta::Index({std::make_shared<Meta::VersionList>("list1"), std::make_shared<Meta::VersionList>("list2"), std::make_shared<Meta::VersionList>("list3")}))); 34 QCOMPARE(windex.lists().size(), 3); 35 windex.merge(std::shared_ptr<Meta::Index>(new Meta::Index({std::make_shared<Meta::VersionList>("list4"), std::make_shared<Meta::VersionList>("list2"), std::make_shared<Meta::VersionList>("list5")}))); 36 QCOMPARE(windex.lists().size(), 5); 37 windex.merge(std::shared_ptr<Meta::Index>(new Meta::Index({std::make_shared<Meta::VersionList>("list6")}))); 38 QCOMPARE(windex.lists().size(), 6); 39 } 40 }; 41 42 QTEST_GUILESS_MAIN(IndexTest) 43 44 #include "Index_test.moc" 45