name: build on: push: branches: - master - main pull_request: jobs: build: runs-on: ubuntu-latest steps: - name: ๐Ÿ“š Git Checkout uses: actions/checkout@v4 - name: ๐ŸŽฏ Setup Dart uses: dart-lang/setup-dart@v1 - name: ๐Ÿ“ฆ Install Dependencies run: dart pub get - name: โœจ Check Formatting run: dart format --line-length 80 --set-exit-if-changed . - name: ๐Ÿ•ต๏ธ Analyze run: dart analyze --fatal-infos --fatal-warnings . - name: ๐Ÿงช Run Tests run: | dart pub global activate coverage 1.2.0 dart test --coverage=coverage && dart pub global run coverage:format_coverage --lcov --in=coverage --out=coverage/lcov.info - name: ๐Ÿ“Š Check Code Coverage uses: VeryGoodOpenSource/very_good_coverage@v2 with: path: ./coverage/lcov.info min_coverage: 100 - name: ๐Ÿ“ˆ Upload coverage reports to Codecov uses: codecov/codecov-action@v3 env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}