keepassxc/tests
Jonathan White 57235219f2
Fix issues with reloading and handling of externally modified db file (#10612)
Fixes #5290
Fixes #9062
Fixes #8545

* Fix data loss on failed reload

- External modifications to the db file can no longer be missed.
- Fixed dialogFinished signal of DatabaseOpenDialog was not emitted when dialog was closed via the 'X' (close) button
- For reloading with a modified db, an additional choice has been added to allow the user to ignore the changes in the file on disk.
- User is now presented with an unlock database dialog if reload fails to open the db automatically. For example when the user removed the YubiKey, failed to touch the YubiKey within the timeout period, or db pw has been changed.
- Mark db as modified when db file is gone or invalid.
- Prevent saving when db is being reloaded
- If merge is triggered by a save action, continue on with the save action after the user makes their choice

---------

Co-authored-by: vuurvlieg <vuurvli3g@protonmail.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-02-02 09:43:02 -05:00
..
data Add Proton Pass importer 2025-01-03 18:30:24 -05:00
gui Passphrase "MIXED case" Type (#11255) 2025-01-03 18:19:48 -05:00
mock Fix challenge-response key data after Botan 2021-05-19 22:36:30 -04:00
util Optimize includes across code base 2021-07-13 22:08:33 -04:00
CMakeLists.txt Fix broken build when using system zxcvbn (#10717) 2024-06-02 07:37:34 -04:00
config-keepassx-tests.h.cmake Remove KeePassHttp plugin and qhttp (#1752) 2018-03-31 11:36:18 -04:00
FailDevice.cpp Formatting the code. 2018-03-31 16:01:30 -04:00
FailDevice.h Make C++11 mandatory. 2015-09-12 13:55:50 +02:00
modeltest.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
modeltest.h Replace Q_EMIT, Q_SIGNALS and Q_SLOTS macros with MOC keywords 2017-03-10 16:12:02 +01:00
TestAutoType.cpp Minor changes to Group API to make it more explicit 2024-03-09 15:21:46 -05:00
TestAutoType.h Auto-Type support for T-CONV, T-REPLACE-RX, and Comments 2021-02-22 07:41:23 -05:00
TestBase32.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestBase32.h Add new Base32 implementation 2017-10-21 13:15:02 +02:00
TestBrowser.cpp Fix code formatting with new clang-format version 2024-08-13 21:38:37 -04:00
TestBrowser.h Create new UrlTools class 2024-01-30 18:26:45 -05:00
TestCli.cpp Prevent duplicate entries in passphrase wordlists 2024-09-13 22:48:16 -04:00
TestCli.h CLI: Add Unicode support on Windows (#8618) 2022-10-29 12:45:17 -04:00
TestConfig.cpp Remove password repeat application setting 2024-04-28 23:41:44 -04:00
TestConfig.h Change settings checkbox texts to positive phrasing (#4715) 2020-05-10 21:35:08 -04:00
TestCryptoHash.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestCryptoHash.h Replace Q_EMIT, Q_SIGNALS and Q_SLOTS macros with MOC keywords 2017-03-10 16:12:02 +01:00
TestCsvExporter.cpp Fix multiple TOTP issues 2024-02-04 11:50:52 -05:00
TestCsvExporter.h Refactor Database and Database widgets (#2491) 2018-11-22 11:47:31 +01:00
TestCsvParser.cpp Fix code formatting with new clang-format version 2024-08-13 21:38:37 -04:00
TestCsvParser.h Moving CsvParser to format/ 2021-08-22 18:30:43 -04:00
TestDatabase.cpp Fix issues with reloading and handling of externally modified db file (#10612) 2025-02-02 09:43:02 -05:00
TestDatabase.h Fix issues with reloading and handling of externally modified db file (#10612) 2025-02-02 09:43:02 -05:00
TestDeletedObjects.cpp Implement KDBX 4.1 extended custom icons 2021-11-22 12:58:04 +01:00
TestDeletedObjects.h Implement KDBX 4.1 extended custom icons 2021-11-22 12:58:04 +01:00
TestEntry.cpp Implement T-CONV and T-REPLACE-RX entry placeholders 2024-12-21 23:41:46 -05:00
TestEntry.h Implement T-CONV and T-REPLACE-RX entry placeholders 2024-12-21 23:41:46 -05:00
TestEntryModel.cpp Show Row-Backgroundcolor in a column 2025-01-19 09:32:12 -05:00
TestEntryModel.h Replace Q_EMIT, Q_SIGNALS and Q_SLOTS macros with MOC keywords 2017-03-10 16:12:02 +01:00
TestEntrySearcher.cpp Add uuid search (#9571) 2023-07-15 15:28:16 -04:00
TestEntrySearcher.h Add uuid search (#9571) 2023-07-15 15:28:16 -04:00
TestFdoSecrets.cpp Correct regex escape logic 2022-09-22 06:49:07 -04:00
TestFdoSecrets.h Replace all crypto libraries with Botan 2021-04-05 22:56:03 -04:00
TestGroup.cpp Disable entry level Auto-Type 2023-08-05 07:29:14 -04:00
TestGroup.h Disable entry level Auto-Type 2023-08-05 07:29:14 -04:00
TestGroupModel.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestGroupModel.h Replace Q_EMIT, Q_SIGNALS and Q_SLOTS macros with MOC keywords 2017-03-10 16:12:02 +01:00
TestHashedBlockStream.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestHashedBlockStream.h Replace Q_EMIT, Q_SIGNALS and Q_SLOTS macros with MOC keywords 2017-03-10 16:12:02 +01:00
TestHibp.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestHibp.h CLI: add 'analyze' subcommand for offline HIBP breach checks 2019-06-25 15:37:40 -04:00
TestIconDownloader.cpp Fix unexpected additional resolved urls in testIconDownloader 2024-09-13 22:47:18 -04:00
TestIconDownloader.h Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestImports.cpp Add Proton Pass importer 2025-01-03 18:30:24 -05:00
TestImports.h Add Proton Pass importer 2025-01-03 18:30:24 -05:00
TestKdbx2.cpp Correctly set KDBX envelope version 2021-11-22 12:58:04 +01:00
TestKdbx2.h Refactor Database and Database widgets (#2491) 2018-11-22 11:47:31 +01:00
TestKdbx3.cpp Prevent byte-by-byte and attachment inference side channel attacks 2024-03-09 15:21:46 -05:00
TestKdbx3.h Prevent byte-by-byte and attachment inference side channel attacks 2024-03-09 15:21:46 -05:00
TestKdbx4.cpp Prevent byte-by-byte and attachment inference side channel attacks 2024-03-09 15:21:46 -05:00
TestKdbx4.h Prevent byte-by-byte and attachment inference side channel attacks 2024-03-09 15:21:46 -05:00
TestKeePass1Reader.cpp Implement KDBX 4.1 extended custom icons 2021-11-22 12:58:04 +01:00
TestKeePass1Reader.h Refactor Database and Database widgets (#2491) 2018-11-22 11:47:31 +01:00
TestKeePass2Format.cpp Fix crash on screen lock or computer sleep 2024-04-28 23:41:45 -04:00
TestKeePass2Format.h Correctly set KDBX envelope version 2021-11-22 12:58:04 +01:00
TestKeePass2RandomStream.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestKeePass2RandomStream.h Replace Q_EMIT, Q_SIGNALS and Q_SLOTS macros with MOC keywords 2017-03-10 16:12:02 +01:00
TestKeys.cpp Add key serialization to support Quick Unlock 2022-02-22 17:53:50 -05:00
TestKeys.h Add MockChallengeResponseKey and additional composite key component test 2018-03-01 19:26:18 -05:00
TestMerge.cpp Prevent KeeShare from merging database custom data 2024-04-29 09:53:20 -04:00
TestMerge.h Prevent KeeShare from merging database custom data 2024-04-29 09:53:20 -04:00
TestModified.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestModified.h Properly block modified signal during Database destruction (#6438) 2021-05-27 21:50:15 -04:00
TestOpenSSHKey.cpp SSH Agent: Add support for OpenSSH 8.2 FIDO/U2F keys 2021-10-01 16:25:14 -04:00
TestOpenSSHKey.h SSH Agent: Add support for OpenSSH 8.2 FIDO/U2F keys 2021-10-01 16:25:14 -04:00
TestPasskeys.cpp Passkeys: Pass extension JSON data to browser (#10615) 2024-04-27 23:35:07 -04:00
TestPasskeys.h Skip a few Passkeys tests with Botan <= 2.14 (#10360) 2024-03-09 15:21:46 -05:00
TestPassphraseGenerator.cpp Prevent duplicate entries in passphrase wordlists 2024-09-13 22:48:16 -04:00
TestPassphraseGenerator.h Prevent duplicate entries in passphrase wordlists 2024-09-13 22:48:16 -04:00
TestPasswordGenerator.cpp Add -i/--include option to "generate" CLI command. (#7112) 2021-12-07 23:40:09 -05:00
TestPasswordGenerator.h Add -i/--include option to "generate" CLI command. (#7112) 2021-12-07 23:40:09 -05:00
TestPasswordHealth.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestPasswordHealth.h Implement Password Health Report 2020-02-01 09:30:12 -05:00
TestRandomGenerator.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestRandomGenerator.h Replace all crypto libraries with Botan 2021-04-05 22:56:03 -04:00
TestSharing.cpp Fix code formatting with new clang-format version 2024-08-13 21:38:37 -04:00
TestSharing.h KeeShare: Remove checking signed container 2021-12-14 23:23:23 -05:00
TestSSHAgent.cpp Fix code formatting with new clang-format version 2024-08-13 21:38:37 -04:00
TestSSHAgent.h Fix removing encrypted ASN.1 keys from ssh-agent (#6804) 2021-08-08 09:36:06 -04:00
TestSymmetricCipher.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestSymmetricCipher.h Replace all crypto libraries with Botan 2021-04-05 22:56:03 -04:00
TestTools.cpp Add New/Preview Entry Attachments dialog and functionality (#11637) 2025-01-19 09:28:36 -05:00
TestTools.h Add New/Preview Entry Attachments dialog and functionality (#11637) 2025-01-19 09:28:36 -05:00
TestTotp.cpp Support KeePass2 TOTP settings 2024-09-13 22:48:57 -04:00
TestTotp.h Support KeePass2 TOTP settings 2024-09-13 22:48:57 -04:00
TestUpdateCheck.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
TestUpdateCheck.h Ran make format 2019-03-19 18:56:17 -04:00
TestUrlTools.cpp Passkeys improvements (#10318) 2024-03-09 15:21:46 -05:00
TestUrlTools.h Passkeys improvements (#10318) 2024-03-09 15:21:46 -05:00
TestYkChallengeResponseKey.cpp Show a clear error if no slots on hardware key(s) are configured (#11609) 2025-01-03 18:20:11 -05:00
TestYkChallengeResponseKey.h Significantly enhance hardware key robustness 2020-05-14 20:19:56 -04:00