Commit graph

61 commits

Author SHA1 Message Date
Lysann Tranvouez
5c416bfb21 test .gpg-id support
mostly using mocks
2026-03-12 09:33:26 +01:00
Lysann Tranvouez
38649f96fe mocking prep: PasswordStoreTest has its own KeyStore 2026-03-12 09:32:04 +01:00
Lysann Tranvouez
e3de11f71c PasswordStore: allow to pass in a specific PGPAgent implementation (for testing) 2026-03-12 09:32:04 +01:00
Lysann Tranvouez
77f85ccdd1 support reading several key IDs in .gpg-id files 2026-03-12 09:32:04 +01:00
Lysann Tranvouez
55b682b4b0 improve directory deletion/editing handling 2026-03-09 22:58:05 +01:00
Lysann Tranvouez
e1da1988b4 add save and decrypt round trip 2026-03-09 22:58:05 +01:00
Lysann Tranvouez
e195280efc test resetting local changes 2026-03-09 22:58:05 +01:00
Lysann Tranvouez
c3bfa861f4 check file system and commits upon changes to store 2026-03-09 22:58:05 +01:00
Lysann Tranvouez
98646242e0 fix deleting directory
this used to corrupt the local state (password entities remained in DB
but files/dirs were removed from git and disk)
2026-03-09 22:58:05 +01:00
Lysann Tranvouez
12c8c04203 test add, edit, delete 2026-03-09 22:58:05 +01:00
Lysann Tranvouez
98ad323431 check notification center notifications 2026-03-09 22:58:05 +01:00
Lysann Tranvouez
e5650ec756 add encrypt-save-decrypt roundtrip test 2026-03-09 22:58:05 +01:00
Lysann Tranvouez
60999c7eab more tests: entity fetching + erase 2026-03-09 22:56:27 +01:00
Lysann Tranvouez
ef188fcfba basic core data tests upon clone 2026-03-09 22:56:27 +01:00
Lysann Tranvouez
85972a02c3 include repo as text fixture, no need to clone from actual github 2026-03-09 22:56:27 +01:00
Lysann Tranvouez
17b6bb8bc2 fix test cleanup 2026-03-09 22:20:04 +01:00
Mingshen Sun
1e79e12593
Cleanup duplicated code (#678) 2025-02-08 14:26:45 -08:00
Mingshen Sun
a69c4d16b1
Refactor git repository model (#674)
- Create a new model class for operations of Git repository.
- Refactor everything related with git.
- Add unit tests for git functions.
2025-02-02 22:18:16 -08:00
Mingshen Sun
d1de81d919
Refactor core data classes (#671) 2025-01-25 15:40:12 -08:00
Danny Mösch
1bdf9d684b Rely on SPM plugins to consume SwiftLint and SwiftFormat
Use their latest releases and fix some violations and issues.

# Conflicts:
#	.github/workflows/linting.yml
#	.github/workflows/testing.yml
2024-11-29 00:18:30 +01:00
Danny Mösch
d9bd0f3014
Update SwiftLint and SwiftFormat (#613)
* Update Swift version used by SwiftFormat

* Update SwiftLint version

* Rely on new virtual 'all' rule in SwiftLint

* Enable SwiftLint rule 'direct_return' rule and fix all violations

* Enable SwiftLint rule 'shorthand_optional_binding' rule and fix all violations

* Enable SwiftLint rule 'blanket_disable_command' rule and fix all violations
2023-04-23 13:01:37 -07:00
Martin Nowak
3ab334dd00 fix #488 - support user field for completion
- a few other backends use `user` instead of `username` or `login`
  (e.g. gopass-jsonapi, keepass2csv importer, fpm2 importer)
- shorter to type when extracting field separately (e.g. CLI/clipboard) tools
2023-01-22 09:44:41 -08:00
Danny Moesch
cdedff0d4d
Use SwiftFormat version 0.49.x and enable some new rules (#527) 2021-12-27 17:57:11 -08:00
Mingshen Sun
f2ab400f4b
Support Steam OTP (#505) 2021-09-06 10:47:04 -07:00
Danny Mösch
91229b3bbd
Add missing file headers (#503) 2021-09-02 17:50:40 -07:00
Mingshen Sun
b49593e87f
Rename ignore .gpg-id switch to enalbe .gpg-id 2021-01-10 20:28:20 -08:00
Mingshen Sun
a62792bd11
Add ignore .gpg-id switch default ON 2021-01-07 21:58:38 -08:00
Mingshen Sun
4a18dd4988 Skip testSSHKeyCredentialProvider in CI 2020-12-30 15:18:39 -08:00
Danny Moesch
6044098278 Refactor GitCredential to simplify it and to add tests 2020-09-06 20:12:36 -07:00
Danny Moesch
d3a11c9d29 Enable SwiftLint rule 'function_default_parameter_at_end' and fix all violations 2020-08-28 16:42:30 -07:00
Danny Moesch
ab80e5297e Enable SwiftLint rule 'unneeded_parentheses_in_closure_argument' and fix all violations 2020-08-28 16:42:30 -07:00
Danny Moesch
2920acefbc Enable SwiftLint rule 'multiple_closures_with_trailing_closure' and fix all violations 2020-08-28 16:42:30 -07:00
Danny Moesch
7f9f0e43b2 Format code with SwiftFormat automatically in every build 2020-08-25 15:10:13 -07:00
Danny Moesch
e2e3275293 Refactor and rename in test code 2020-04-19 13:42:41 -07:00
Danny Moesch
4c2693e2c7 Name classes/structs consistently 2020-04-19 13:42:41 -07:00
Mingshen Sun
fcc8961e46
Fix fail-safe mechanism for other decryption scenarios 2020-04-18 22:42:25 -07:00
Mingshen Sun
e9c5b63c4b Refactor logic of request PGP key passphrase 2020-04-13 21:23:23 -07:00
Mingshen Sun
e62f4714e8 Encryption support for multi keys 2020-04-13 21:23:23 -07:00
Mingshen Sun
b7ee00815c Partially implement multikeys support (decryption) 2020-04-13 21:23:23 -07:00
Mingshen Sun
7f6e3f1909 Enable RSA4096 subkey and clone 2020-04-12 20:15:49 -07:00
Mingshen Sun
84b1c07f64 Update to gopengpg v2.0.0 2020-04-12 20:15:49 -07:00
Yishi Lin
6bf4716366 Better search results 2020-02-23 18:06:14 +08:00
Danny Moesch
730542d5bb Separate encryption/decryption logic for different frameworks used 2019-09-15 00:32:18 -07:00
Danny Moesch
5c7d4e55a4 Introduce KeyStore protocol in order to provide specialized key store implementations for tests
With the DictBasedKeychain the main AppKeychain is not influenced by tests. The previous implementation led to an empty Keychain requiring a new setup of the simulator.
2019-07-20 23:42:32 +02:00
Yishi Lin
e967bb1f4c Add PGPAgent tests and minor updated 2019-07-20 00:41:45 +08:00
Yishi Lin
765b487ffa Add tests in PGPAgentTest 2019-07-19 00:14:51 +08:00
Yishi Lin
6ae4a02a01 Seperate PGPAgent from PasswordStore and add tests 2019-07-17 02:58:01 +08:00
Meris Bahtijaragic
c59c72729b Get username from filepath. (#265) 2019-05-17 23:30:41 +08:00
Danny Moesch
e06413b348 Add default value to non-optional DefaultsKeys 2019-05-01 18:30:13 +02:00
Danny Moesch
1b4040135e Localize strings in code 2019-01-20 21:04:04 -08:00