Skip to content

Commit f95a532

Browse files
authored
Authenticator refactor (#486)
* Tidy sync flags. * Tweak doc comments. * Prune obsolete code. * Remove NO_SYNC flag from authenticator. * Support options in create_folder(). * Rename methods in VaultAccess. * Tidy functions for flag access and doc comments. * Support setting vault flags in VaultAccess. * Respect SetVaultFlags event in folder reducer. * Add test spec for set_vault_flags(). * Expose update_folder_flags() in Account. * Support remove_local_folder(). To delete a folder, not apply the AccountEvent::DeleteFolder event to the account logs so the folder will not be deleted from other devices and the network implementation does not need to sync. This is for folders which need special handling such as an authenticator folder. * Add initial NO_SYNC test spec. * Test for is_sync_disabled() when building UpdateSet. * Test for is_sync_disabled() when building sync diff. * Add test spec for NO_SYNC flag. * Bump patch version.
1 parent befb705 commit f95a532

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+762
-328
lines changed

Cargo.lock

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/integration_tests/tests/audit_trail/client.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,9 @@ async fn simulate_session(
158158
// Create a new folder
159159
let FolderCreate {
160160
folder: new_folder, ..
161-
} = account.create_folder("New folder".to_string()).await?;
161+
} = account
162+
.create_folder("New folder".to_string(), Default::default())
163+
.await?;
162164
// Rename the folder
163165
account
164166
.rename_folder(&new_folder, "New name".to_string())

crates/integration_tests/tests/diff_merge/folder_create.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,9 @@ async fn diff_merge_folder_create() -> Result<()> {
4545
// Create a new folder
4646
let FolderCreate {
4747
folder: summary, ..
48-
} = local.create_folder("new_folder".to_owned()).await?;
48+
} = local
49+
.create_folder("new_folder".to_owned(), Default::default())
50+
.await?;
4951

5052
assert_ne!(local.sync_status().await?, remote.sync_status().await?);
5153

crates/integration_tests/tests/diff_merge/folder_delete.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,9 @@ async fn diff_merge_folder_delete() -> Result<()> {
4242
// Create a new folder
4343
let FolderCreate {
4444
folder: summary, ..
45-
} = local.create_folder("new_folder".to_owned()).await?;
45+
} = local
46+
.create_folder("new_folder".to_owned(), Default::default())
47+
.await?;
4648

4749
// Delete the folder
4850
local.delete_folder(&summary).await?;

crates/integration_tests/tests/diff_merge/folder_import.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,9 @@ async fn diff_merge_folder_import() -> Result<()> {
5252
temp.sign_in(&key).await?;
5353
let FolderCreate {
5454
folder: summary, ..
55-
} = temp.create_folder("new_folder".to_owned()).await?;
55+
} = temp
56+
.create_folder("new_folder".to_owned(), Default::default())
57+
.await?;
5658
let (folder_password, _) = generate_passphrase()?;
5759
let folder_key: AccessKey = folder_password.into();
5860
let exported = data_dir_export.join("exported.vault");

crates/integration_tests/tests/diff_merge/secret_move.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,9 @@ async fn diff_merge_secret_move() -> Result<()> {
5252
// Create a new folder
5353
let FolderCreate {
5454
folder: summary, ..
55-
} = local.create_folder("new_folder".to_owned()).await?;
55+
} = local
56+
.create_folder("new_folder".to_owned(), Default::default())
57+
.await?;
5658

5759
// Move the secret
5860
let SecretMove { id: new_id, .. } = local

crates/integration_tests/tests/event_log/account_events.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,9 @@ async fn event_log_account() -> Result<()> {
3333
// Create a folder
3434
let commit = event_log.tree().last_commit();
3535
let folder_name = "folder_name";
36-
let FolderCreate { folder, .. } =
37-
account.create_folder(folder_name.to_string()).await?;
36+
let FolderCreate { folder, .. } = account
37+
.create_folder(folder_name.to_string(), Default::default())
38+
.await?;
3839

3940
let event = last_log_event(&mut event_log, commit.as_ref()).await?;
4041
assert!(matches!(event, Some(AccountEvent::CreateFolder(_, _))));

crates/integration_tests/tests/event_log/file_events.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,9 @@ async fn event_log_file() -> Result<()> {
2929

3030
// Create a folder so we can move the secret
3131
let folder_name = "folder_name";
32-
let FolderCreate { folder, .. } =
33-
account.create_folder(folder_name.to_string()).await?;
32+
let FolderCreate { folder, .. } = account
33+
.create_folder(folder_name.to_string(), Default::default())
34+
.await?;
3435

3536
// Create an external file secret
3637
let (meta, secret, _file_path) = mock::file_text_secret()?;

crates/integration_tests/tests/file_transfers/abort_move.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ async fn file_transfers_abort_move() -> Result<()> {
2626
let FolderCreate {
2727
folder: destination,
2828
..
29-
} = device.owner.create_folder("new_folder".to_owned()).await?;
29+
} = device
30+
.owner
31+
.create_folder("new_folder".to_owned(), Default::default())
32+
.await?;
3033

3134
// Create an external file secret
3235
let (secret_id, _, _, file_name) =

crates/integration_tests/tests/file_transfers/attachments.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,10 @@ async fn file_transfers_attach_move() -> Result<()> {
166166
let FolderCreate {
167167
folder: destination,
168168
..
169-
} = device.owner.create_folder("new_folder".to_owned()).await?;
169+
} = device
170+
.owner
171+
.create_folder("new_folder".to_owned(), Default::default())
172+
.await?;
170173

171174
// Moving the secret also needs to move the files
172175
let SecretMove { id: secret_id, .. } = device

0 commit comments

Comments
 (0)