diff --git a/.github/workflows/format-lint-test.yaml b/.github/workflows/format-lint-test.yaml index 788d7fe9b..7731029e5 100644 --- a/.github/workflows/format-lint-test.yaml +++ b/.github/workflows/format-lint-test.yaml @@ -42,12 +42,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Rust stable - # TODO Set back to @stable (workaround for #224). - # uses: dtolnay/rust-toolchain@1.77.2 fails because it does not include rustfmt. - uses: dtolnay/rust-toolchain@master - with: - toolchain: 1.77.2 - components: clippy, rustfmt + uses: dtolnay/rust-toolchain@stable - name: Install dependencies working-directory: ./unime/src-tauri @@ -55,6 +50,12 @@ jobs: sudo apt-get update sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf + - name: Install cargo-nextest + uses: baptiste0928/cargo-install@v1 + with: + crate: cargo-nextest + args: --locked + - name: Format working-directory: ./unime/src-tauri run: cargo fmt -- --check @@ -82,7 +83,7 @@ jobs: - name: Test working-directory: ./unime/src-tauri - run: cargo test + run: cargo nextest run --retries 2 identity_wallet: runs-on: ubuntu-latest @@ -91,17 +92,19 @@ jobs: - uses: actions/checkout@v4 - name: Use Rust stable - # TODO See comment above. - uses: dtolnay/rust-toolchain@master - with: - toolchain: 1.77.2 - components: clippy, rustfmt + uses: dtolnay/rust-toolchain@stable - name: Install dependencies working-directory: ./identity-wallet run: | sudo apt-get update sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf + + - name: Install cargo-nextest + uses: baptiste0928/cargo-install@v1 + with: + crate: cargo-nextest + args: --locked - name: Format working-directory: ./identity-wallet @@ -113,4 +116,4 @@ jobs: - name: Test working-directory: ./identity-wallet - run: cargo test + run: cargo nextest run --retries 2 diff --git a/identity-wallet/src/command.rs b/identity-wallet/src/command.rs index 17004c712..d2350cc8a 100644 --- a/identity-wallet/src/command.rs +++ b/identity-wallet/src/command.rs @@ -33,7 +33,7 @@ pub(crate) async fn reduce(state: AppState, action: Action) -> Result(action: Action) -> Option { action.downcast_arc::().ok().map(|action| (*action).clone()) } +#[allow(clippy::empty_line_after_doc_comments)] /// Below is an example of how to add an action to the app /// /// Example: diff --git a/identity-wallet/src/state/common/mod.rs b/identity-wallet/src/state/common/mod.rs index b7081ab07..237b43c22 100644 --- a/identity-wallet/src/state/common/mod.rs +++ b/identity-wallet/src/state/common/mod.rs @@ -17,6 +17,7 @@ mod tests { use std::sync::Arc; #[tokio::test] + #[serial_test::serial] async fn test_cancel_user_flow() { let current_user_prompt = Some(CurrentUserPrompt::ShareCredentials { client_name: "Impierce Technologies".to_string(), @@ -58,6 +59,7 @@ mod tests { } #[tokio::test] + #[serial_test::serial] async fn test_reset_state() { let mut app_state = AppState { profile_settings: ProfileSettings { diff --git a/identity-wallet/src/state/credentials/reducers/delete_credential.rs b/identity-wallet/src/state/credentials/reducers/delete_credential.rs index 6aaeb6399..205d40dd7 100644 --- a/identity-wallet/src/state/credentials/reducers/delete_credential.rs +++ b/identity-wallet/src/state/credentials/reducers/delete_credential.rs @@ -77,6 +77,7 @@ mod tests { use crate::stronghold::StrongholdManager; #[tokio::test] + #[serial_test::serial] async fn test_credential_is_removed_from_appstate_and_from_stronghold_and_image_is_deleted() { let uuid = Uuid::new_v4(); diff --git a/identity-wallet/src/state/did/validate_domain_linkage.rs b/identity-wallet/src/state/did/validate_domain_linkage.rs index 479612cde..4c460a7fd 100644 --- a/identity-wallet/src/state/did/validate_domain_linkage.rs +++ b/identity-wallet/src/state/did/validate_domain_linkage.rs @@ -146,7 +146,7 @@ async fn fetch_configuration(mut url: url::Url) -> Result