Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/keepassxreboot/keepassxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Geyer <debfx@fobos.de>2013-03-23 00:00:06 +0400
committerFelix Geyer <debfx@fobos.de>2013-03-24 17:00:23 +0400
commit21a80101ba1fe358de2be38da9a81b1be7779043 (patch)
tree88c684dd4290cf50bcded9e3abd3e39a6fa2ca18 /tests/TestEntryModel.cpp
parentc7593a30472ce336c5e5ecd864c046ad50e1e3f2 (diff)
Add TestEntryModel::testDatabaseDelete().
It tests that EntryModel in EntryList mode correctly removes entries from the model when that database of these entries is deleted.
Diffstat (limited to 'tests/TestEntryModel.cpp')
-rw-r--r--tests/TestEntryModel.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/TestEntryModel.cpp b/tests/TestEntryModel.cpp
index 286750728..3ac22c991 100644
--- a/tests/TestEntryModel.cpp
+++ b/tests/TestEntryModel.cpp
@@ -311,4 +311,35 @@ void TestEntryModel::testProxyModel()
delete db;
}
+void TestEntryModel::testDatabaseDelete()
+{
+ EntryModel* model = new EntryModel(this);
+ ModelTest* modelTest = new ModelTest(model, this);
+
+ Database* db1 = new Database();
+ Group* group1 = new Group();
+ group1->setParent(db1->rootGroup());
+
+ Entry* entry1 = new Entry();
+ entry1->setGroup(group1);
+
+ Database* db2 = new Database();
+ Entry* entry2 = new Entry();
+ entry2->setGroup(db2->rootGroup());
+
+ model->setEntryList(QList<Entry*>() << entry1 << entry2);
+
+ QCOMPARE(model->rowCount(), 2);
+
+ delete db1;
+ QCOMPARE(model->rowCount(), 1);
+
+ delete entry2;
+ QCOMPARE(model->rowCount(), 0);
+
+ delete db2;
+ delete modelTest;
+ delete model;
+}
+
QTEST_GUILESS_MAIN(TestEntryModel)