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>2019-04-10 04:06:13 +0300
committerJonathan White <support@dmapps.us>2019-04-11 15:52:51 +0300
commit2ffefc95ae22f25d5bac2f60bd486640eff7cea0 (patch)
tree087726e76327617b3a01ce7c10290c70421513a9 /tests/TestUpdateCheck.cpp
parent53a57ee8c7b0f6ebb9ec89321a005833a1b5f9ba (diff)
Enhance update checker
* Reduce initial update check notification to 500 ms to prevent inappropriately stealing focus from user * Add build flag WITH_XC_UPDATECHECK which defaults to ON * Update checks are resolved every 7 days instead of every time the application is started * Better checks for beta builds; ignore snapshots * Increase test cases
Diffstat (limited to 'tests/TestUpdateCheck.cpp')
-rw-r--r--tests/TestUpdateCheck.cpp35
1 files changed, 27 insertions, 8 deletions
diff --git a/tests/TestUpdateCheck.cpp b/tests/TestUpdateCheck.cpp
index 8cba43b1d..ff709cd56 100644
--- a/tests/TestUpdateCheck.cpp
+++ b/tests/TestUpdateCheck.cpp
@@ -29,13 +29,32 @@ void TestUpdateCheck::initTestCase()
void TestUpdateCheck::testCompareVersion()
{
- // Remote Version , Installed Version
- QCOMPARE(UpdateChecker::compareVersions(QString("2.4.0"), QString("2.3.4")), true);
- QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0"), QString("2.4.0")), false);
+ // No upgrade
QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0"), QString("2.3.0")), false);
- QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0"), QString("2.3.0-beta1")), true);
- QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0-beta2"), QString("2.3.0-beta1")), true);
- QCOMPARE(UpdateChecker::compareVersions(QString("2.3.4"), QString("2.4.0-snapshot")), false);
- QCOMPARE(UpdateChecker::compareVersions(QString("invalid"), QString("2.4.0")), false);
- QCOMPARE(UpdateChecker::compareVersions(QString(""), QString("2.4.0")), false);
+
+ // First digit upgrade
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.4.0"), QString("3.0.0")), true);
+ QCOMPARE(UpdateChecker::compareVersions(QString("3.0.0"), QString("2.4.0")), false);
+
+ // Second digit upgrade
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.4"), QString("2.4.0")), true);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.4.0"), QString("2.3.4")), false);
+
+ // Third digit upgrade
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0"), QString("2.3.1")), true);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.1"), QString("2.3.0")), false);
+
+ // Beta builds
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0"), QString("2.3.0-beta1")), false);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0"), QString("2.3.1-beta1")), true);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0-beta1"), QString("2.3.0")), true);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0-beta"), QString("2.3.0-beta1")), true);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0-beta1"), QString("2.3.0-beta")), false);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0-beta1"), QString("2.3.0-beta2")), true);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.0-beta2"), QString("2.3.0-beta1")), false);
+
+ // Snapshot and invalid data
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.3.4-snapshot"), QString("2.4.0")), false);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.4.0"), QString("invalid")), false);
+ QCOMPARE(UpdateChecker::compareVersions(QString("2.4.0"), QString("")), false);
}