mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-08-09 15:02:39 -04:00
Implement KDBX 4.1 PreviousParentGroup flag
This commit is contained in:
parent
ffaeac130f
commit
cd9ef58e98
10 changed files with 200 additions and 18 deletions
|
@ -1143,7 +1143,7 @@ void TestGroup::testUsernamesRecursive()
|
|||
QVERIFY(usernames.indexOf("Name2") < usernames.indexOf("Name1"));
|
||||
}
|
||||
|
||||
void TestGroup::testMove()
|
||||
void TestGroup::testMoveUpDown()
|
||||
{
|
||||
Database database;
|
||||
Group* root = database.rootGroup();
|
||||
|
@ -1253,3 +1253,40 @@ void TestGroup::testMove()
|
|||
QCOMPARE(root->entries().at(2), entry1);
|
||||
QCOMPARE(root->entries().at(3), entry0);
|
||||
}
|
||||
|
||||
void TestGroup::testPreviousParentGroup()
|
||||
{
|
||||
Database db;
|
||||
auto* root = db.rootGroup();
|
||||
root->setUuid(QUuid::createUuid());
|
||||
QVERIFY(!root->uuid().isNull());
|
||||
QVERIFY(!root->previousParentGroup());
|
||||
QVERIFY(root->previousParentGroupUuid().isNull());
|
||||
|
||||
auto* group1 = new Group();
|
||||
group1->setUuid(QUuid::createUuid());
|
||||
group1->setParent(root);
|
||||
QVERIFY(!group1->uuid().isNull());
|
||||
QVERIFY(!group1->previousParentGroup());
|
||||
QVERIFY(group1->previousParentGroupUuid().isNull());
|
||||
|
||||
auto* group2 = new Group();
|
||||
group2->setParent(root);
|
||||
group2->setUuid(QUuid::createUuid());
|
||||
QVERIFY(!group2->uuid().isNull());
|
||||
QVERIFY(!group2->previousParentGroup());
|
||||
QVERIFY(group2->previousParentGroupUuid().isNull());
|
||||
|
||||
group1->setParent(group2);
|
||||
QVERIFY(group1->previousParentGroupUuid() == root->uuid());
|
||||
QVERIFY(group1->previousParentGroup() == root);
|
||||
|
||||
// Previous parent shouldn't be recorded if new and old parent are the same
|
||||
group1->setParent(group2);
|
||||
QVERIFY(group1->previousParentGroupUuid() == root->uuid());
|
||||
QVERIFY(group1->previousParentGroup() == root);
|
||||
|
||||
group1->setParent(root);
|
||||
QVERIFY(group1->previousParentGroupUuid() == group2->uuid());
|
||||
QVERIFY(group1->previousParentGroup() == group2);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue