name: Unit test(Flutter) on: push: branches: - 'main' pull_request: branches: - 'main' env: CARGO_TERM_COLOR: always jobs: tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: toolchain: 'stable-2022-01-20' - uses: subosito/flutter-action@v2 with: channel: 'stable' flutter-version: '3.0.0' cache: true - name: Cache Cargo uses: actions/cache@v2 with: path: | ~/.cargo key: ${{ runner.os }}-cargo-${{ steps.rust_toolchain.outputs.rustc_hash }}-${{ hashFiles('./frontend/rust-lib/Cargo.toml') }} - name: Cache Rust uses: actions/cache@v2 with: path: | frontend/rust-lib/target shared-lib/target key: ${{ runner.os }}-rust-rust-lib-share-lib-${{ steps.rust_toolchain.outputs.rustc_hash }}-${{ hashFiles('./frontend/rust-lib/Cargo.toml') }} - name: Flutter Deps working-directory: frontend/app_flowy run: | flutter config --enable-linux-desktop - name: Rust Deps working-directory: frontend run: | cargo install cargo-make cargo make flowy_dev - name: Build FlowySDK working-directory: frontend run: | cargo make --profile development-linux-x86_64 flowy-sdk-dev - name: Code Generation working-directory: frontend/app_flowy run: | flutter packages pub get flutter packages pub run easy_localization:generate -f keys -o locale_keys.g.dart -S assets/translations -s en.json flutter packages pub run build_runner build --delete-conflicting-outputs - name: Run bloc tests working-directory: frontend/app_flowy run: | flutter pub get flutter test