From 50d449d489262f644a33d2d2fb1479b235bc23c2 Mon Sep 17 00:00:00 2001 From: Olivier Tilloy Date: Tue, 4 Dec 2012 08:53:19 +0100 Subject: Compare the exact cache indexes instead of just comparing the size of the cache. --- tests/client/cachetest.cpp | 37 ++++++++++++++++++++++--------------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/tests/client/cachetest.cpp b/tests/client/cachetest.cpp index bd29dfe..381761f 100644 --- a/tests/client/cachetest.cpp +++ b/tests/client/cachetest.cpp @@ -26,12 +26,11 @@ extern "C" { #include -class MenuModelTestClass : public QMenuModel +class TestModel : public QMenuModel { Q_OBJECT public: - MenuModelTestClass() - : QMenuModel(0) + TestModel() : QMenuModel(0) { GMenu *menu3 = g_menu_new(); g_menu_append(menu3, "menu4", NULL); @@ -61,9 +60,11 @@ public: g_menu_insert(menu, index, label.toUtf8().data(), NULL); } - int cacheSize() const + QList cacheIndexes() const { - return cache().size(); + QList indexes = cache().keys(); + qSort(indexes); + return indexes; } private: @@ -73,6 +74,7 @@ private: class CacheTest : public QObject { Q_OBJECT + private Q_SLOTS: void initTestCase() { @@ -84,15 +86,15 @@ private Q_SLOTS: // void testStaticMenuCache() { - MenuModelTestClass menu; + TestModel menu; QModelIndex index = menu.index(3); QVariant data = menu.data(index, QMenuModel::LinkSection); - QCOMPARE(menu.cacheSize(), 1); + QCOMPARE(menu.cacheIndexes(), QList() << 3); QVariant data2 = menu.data(index, QMenuModel::LinkSection); - QCOMPARE(menu.cacheSize(), 1); + QCOMPARE(menu.cacheIndexes(), QList() << 3); QVERIFY(data.value() == data2.value()); @@ -101,6 +103,7 @@ private Q_SLOTS: index = section->index(1); data = menu.data(index, QMenuModel::LinkSection); data2 = menu.data(index, QMenuModel::LinkSection); + QCOMPARE(menu.cacheIndexes(), QList() << 3); QVERIFY(data.value() == data2.value()); } @@ -110,17 +113,19 @@ private Q_SLOTS: // void testAddItem() { - MenuModelTestClass menu; + TestModel menu; QModelIndex index = menu.index(3); QVariant data = menu.data(index, QMenuModel::LinkSection); + QCOMPARE(menu.cacheIndexes(), QList() << 3); menu.insertItem(0, 1, "newMenu"); + QCOMPARE(menu.cacheIndexes(), QList() << 4); index = menu.index(4); QVariant data2 = menu.data(index, QMenuModel::LinkSection); - QCOMPARE(menu.cacheSize(), 1); + QCOMPARE(menu.cacheIndexes(), QList() << 4); QVERIFY(data.value() == data2.value()); } @@ -130,17 +135,19 @@ private Q_SLOTS: // void testRemoveItem() { - MenuModelTestClass menu; + TestModel menu; QModelIndex index = menu.index(3); QVariant data = menu.data(index, QMenuModel::LinkSection); + QCOMPARE(menu.cacheIndexes(), QList() << 3); menu.removeItem(0, 1); + QCOMPARE(menu.cacheIndexes(), QList() << 2); index = menu.index(2); QVariant data2 = menu.data(index, QMenuModel::LinkSection); - QCOMPARE(menu.cacheSize(), 1); + QCOMPARE(menu.cacheIndexes(), QList() << 2); QVERIFY(data.value() == data2.value()); } @@ -149,14 +156,14 @@ private Q_SLOTS: // void testRemoveCachedItem() { - MenuModelTestClass menu; + TestModel menu; QModelIndex index = menu.index(3); QVariant data = menu.data(index, QMenuModel::LinkSection); + QCOMPARE(menu.cacheIndexes(), QList() << 3); - QCOMPARE(menu.cacheSize(), 1); menu.removeItem(0, 3); - QCOMPARE(menu.cacheSize(), 0); + QVERIFY(menu.cacheIndexes().isEmpty()); } }; -- cgit v1.2.3