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:
authorJonathan White <support@dmapps.us>2018-11-17 17:55:57 +0300
committerJonathan White <support@dmapps.us>2018-11-17 17:55:57 +0300
commit340076974e05ee58ea43635d09f110dcb987caa5 (patch)
tree258d315b5486ab07e3d78996af0760b0b30fb174 /tests/TestEntrySearcher.cpp
parent880c3aeb349d2990ae3a297f06d79d79f25b4402 (diff)
Correct logic error in EntrySearcher and add more tests
Diffstat (limited to 'tests/TestEntrySearcher.cpp')
-rw-r--r--tests/TestEntrySearcher.cpp23
1 files changed, 21 insertions, 2 deletions
diff --git a/tests/TestEntrySearcher.cpp b/tests/TestEntrySearcher.cpp
index 51be468b5..eee9b9101 100644
--- a/tests/TestEntrySearcher.cpp
+++ b/tests/TestEntrySearcher.cpp
@@ -20,12 +20,12 @@
QTEST_GUILESS_MAIN(TestEntrySearcher)
-void TestEntrySearcher::initTestCase()
+void TestEntrySearcher::init()
{
m_rootGroup = new Group();
}
-void TestEntrySearcher::cleanupTestCase()
+void TestEntrySearcher::cleanup()
{
delete m_rootGroup;
}
@@ -71,6 +71,7 @@ void TestEntrySearcher::testSearch()
eRoot2->setNotes("test term test");
eRoot2->setGroup(m_rootGroup);
+ // Searching is disabled for these
Entry* e1 = new Entry();
e1->setUsername("test search term test");
e1->setGroup(group1);
@@ -78,6 +79,7 @@ void TestEntrySearcher::testSearch()
Entry* e11 = new Entry();
e11->setNotes("test search term test");
e11->setGroup(group11);
+ // End searching disabled
Entry* e2111 = new Entry();
e2111->setTitle("test search term test");
@@ -85,6 +87,7 @@ void TestEntrySearcher::testSearch()
Entry* e2111b = new Entry();
e2111b->setNotes("test search test");
+ e2111b->setUsername("user123");
e2111b->setPassword("testpass");
e2111b->setGroup(group2111);
@@ -94,9 +97,11 @@ void TestEntrySearcher::testSearch()
Entry* e3b = new Entry();
e3b->setTitle("test search test");
+ e3b->setUsername("test@email.com");
e3b->setPassword("realpass");
e3b->setGroup(group3);
+ // Simple search term testing
m_searchResult = m_entrySearcher.search("search", m_rootGroup);
QCOMPARE(m_searchResult.count(), 5);
@@ -106,9 +111,23 @@ void TestEntrySearcher::testSearch()
m_searchResult = m_entrySearcher.search("search term", group211);
QCOMPARE(m_searchResult.count(), 1);
+ // Test advanced search terms
m_searchResult = m_entrySearcher.search("password:testpass", m_rootGroup);
QCOMPARE(m_searchResult.count(), 1);
+ m_searchResult = m_entrySearcher.search("!user:email.com", m_rootGroup);
+ QCOMPARE(m_searchResult.count(), 5);
+
+ m_searchResult = m_entrySearcher.search("*user:\".*@.*\\.com\"", m_rootGroup);
+ QCOMPARE(m_searchResult.count(), 1);
+
+ m_searchResult = m_entrySearcher.search("+user:email", m_rootGroup);
+ QCOMPARE(m_searchResult.count(), 0);
+
+ // Terms are logical AND together
+ m_searchResult = m_entrySearcher.search("password:pass user:user", m_rootGroup);
+ QCOMPARE(m_searchResult.count(), 1);
+
// Parent group has search disabled
m_searchResult = m_entrySearcher.search("search term", group11);
QCOMPARE(m_searchResult.count(), 0);