rust_test.yml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. name: Unit test(Rust)
  2. on:
  3. push:
  4. branches:
  5. - "main"
  6. paths:
  7. - "frontend/rust-lib/**"
  8. - "shared-lib/**"
  9. pull_request:
  10. branches:
  11. - "main"
  12. paths:
  13. - "frontend/rust-lib/**"
  14. - "shared-lib/**"
  15. env:
  16. CARGO_TERM_COLOR: always
  17. jobs:
  18. tests:
  19. runs-on: ubuntu-latest
  20. steps:
  21. - name: Checkout
  22. uses: actions/checkout@v2
  23. - id: rust_toolchain
  24. uses: actions-rs/toolchain@v1
  25. with:
  26. toolchain: 'stable-2022-01-20'
  27. - name: Cache Cargo
  28. uses: actions/cache@v2
  29. with:
  30. path: |
  31. ~/.cargo
  32. key: ${{ runner.os }}-cargo-${{ steps.rust_toolchain.outputs.rustc_hash }}-${{ hashFiles('./frontend/rust-lib/Cargo.toml') }}
  33. - name: Cache Rust
  34. uses: actions/cache@v2
  35. with:
  36. path: |
  37. frontend/rust-lib/target
  38. shared-lib/target
  39. key: ${{ runner.os }}-rust-rust-lib-share-lib-${{ steps.rust_toolchain.outputs.rustc_hash }}-${{ hashFiles('./frontend/rust-lib/Cargo.toml') }}
  40. - name: Install cargo-make
  41. working-directory: frontend
  42. run: cargo install cargo-make
  43. - name: Run rust-lib tests
  44. working-directory: frontend/rust-lib
  45. run: RUST_LOG=info cargo test --no-default-features --features="sync"
  46. - name: Run shared-lib tests
  47. working-directory: shared-lib
  48. run: RUST_LOG=info cargo test --no-default-features