Skip to content

Logout button improvements - Fix golden tests #2483

Logout button improvements - Fix golden tests

Logout button improvements - Fix golden tests #2483

name: "rx_bloc packages CI"
on:
push:
paths:
- ".github/workflows/build_and_test_rx_bloc_packages.yaml"
- "packages/**"
- "examples/**"
jobs:
examples:
strategy:
matrix:
folder:
[
"examples/booking_app",
"examples/counter",
"examples/division",
"examples/favorites_advanced/rx_bloc_favorites_advanced",
"examples/todoapp",
]
fail-fast: false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: "stable"
- run: dart --version
- run: flutter --version
- name: Install Dependencies
working-directory: ${{ matrix.folder }}
run: flutter pub get
- name: Build Runner Build
working-directory: ${{ matrix.folder }}
run: |
flutter pub run build_runner clean
flutter pub run build_runner build --delete-conflicting-outputs
- name: Analyze
working-directory: ${{ matrix.folder }}
run: flutter analyze lib
- name: Run tests
working-directory: ${{ matrix.folder }}
run: |
if [ -d "test" ]; then
flutter test --coverage --dart-define=CI=true --exclude-tags=not-tests
fi
- name: Remove unnecessary files
working-directory: ${{ matrix.folder }}
run: flutter pub run clean_coverage clean --exclusions '**.realm.dart','**/*.g.dart','**/di/**','**repository.dart','**/models/**','**/routes.dart','**data_source.dart','**_model.g.dart','**_models.g.dart''**_model.dart','**_model_extensions.dart','**_models.dart','**_models_extensions.dart','**_config.dart','**_constants.dart','**_translations.dart','lib/assets.dart','lib/keys.dart','lib/base/theme/**','lib/base/utils/**','lib/keys.dart','lib/l10n/**' coverage/lcov.info
- name: Check Code Coverage
uses: VeryGoodOpenSource/very_good_coverage@v3
with:
path: "${{ matrix.folder }}/coverage/lcov.info"
min_coverage: 50
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
directory: ${{ matrix.folder }}/coverage
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_SECRET }}
flutter_packages:
strategy:
matrix:
folder: ["packages/rx_bloc_list", "packages/flutter_rx_bloc"]
fail-fast: false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: "stable"
- run: dart --version
- run: flutter --version
- run: dart pub global activate pana
- name: Install Dependencies
working-directory: ${{ matrix.folder }}
run: flutter pub get
- name: Build Runner Build
working-directory: ${{ matrix.folder }}
run: |
flutter pub run build_runner clean
flutter pub run build_runner build --delete-conflicting-outputs
- name: Analyze
working-directory: ${{ matrix.folder }}
run: flutter analyze lib
- name: Verify package for publishing
working-directory: ${{ matrix.folder }}
run: |
dart pub global run pana .
dart pub publish --dry-run
- name: Run tests
working-directory: ${{ matrix.folder }}
run: |
if [ -d "test" ]; then
flutter test --coverage --exclude-tags=not-tests
fi
- name: Remove unnecessary files
working-directory: ${{ matrix.folder }}
run: flutter pub run clean_coverage clean --exclusions '**/*.g.dart','**repository.dart','**rxb.g.dart' coverage/lcov.info
- name: Check Code Coverage
uses: VeryGoodOpenSource/very_good_coverage@v3
with:
path: "${{ matrix.folder }}/coverage/lcov.info"
min_coverage: 89
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
directory: ${{ matrix.folder }}/coverage
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_SECRET }}
packages:
strategy:
matrix:
folder:
[
"packages/rx_bloc",
"packages/rx_bloc_test",
"packages/rx_bloc_generator",
]
fail-fast: false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: "stable"
- run: dart --version
- run: flutter --version
- run: dart pub global activate pana
- name: Install Dependencies
working-directory: ${{ matrix.folder }}
run: dart pub get
- name: Analyze
working-directory: ${{ matrix.folder }}
run: flutter analyze lib
- name: Verify package for publishing
working-directory: ${{ matrix.folder }}
run: |
dart pub global run pana .
dart pub publish --dry-run
- name: Run tests
working-directory: ${{ matrix.folder }}
run: |
if [ -d "test" ]; then
dart test --coverage=coverage --exclude-tags=not-tests
fi
- name: Format coverage
working-directory: ${{ matrix.folder }}
run: dart run coverage:format_coverage --lcov --in=coverage --out=coverage/lcov.info --report-on=lib
- name: Remove unnecessary files
working-directory: ${{ matrix.folder }}
run: dart run clean_coverage clean --exclusions '**/.g.dart','**repository.dart','**rxb.g.dart' coverage/lcov.info
- name: Check Code Coverage
uses: VeryGoodOpenSource/very_good_coverage@v3
with:
path: "${{ matrix.folder }}/coverage/lcov.info"
min_coverage: 67
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
directory: ${{ matrix.folder }}/coverage
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_SECRET }}
cli_packages:
strategy:
matrix:
folder: ["packages/rx_bloc_cli"]
fail-fast: false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: "stable"
- run: dart --version
- run: flutter --version
- name: Install Dependencies
working-directory: ${{ matrix.folder }}
run: dart pub get
- name: Build Runner Build
working-directory: ${{ matrix.folder }}
run: |
flutter pub run build_runner clean
flutter pub run build_runner build --delete-conflicting-outputs
- name: Compile Bundles
working-directory: ${{ matrix.folder }}
run: bash bin/compile_bundles.sh
- name: Analyze
working-directory: ${{ matrix.folder }}
run: flutter analyze lib
- name: Run tests
working-directory: ${{ matrix.folder }}
run: |
if [ -d "test" ]; then
dart test --coverage=coverage --exclude-tags=not-tests
fi
- name: Format coverage
working-directory: ${{ matrix.folder }}
run: dart run coverage:format_coverage --lcov --in=coverage --out=coverage/lcov.info --report-on=lib
- name: Remove unnecessary files
working-directory: ${{ matrix.folder }}
run: dart run clean_coverage clean --exclusions '**/.g.dart','**repository.dart','**rxb.g.dart' coverage/lcov.info
- name: Check Code Coverage
uses: VeryGoodOpenSource/very_good_coverage@v3
with:
path: "${{ matrix.folder }}/coverage/lcov.info"
min_coverage: 67
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
directory: ${{ matrix.folder }}/coverage
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_SECRET }}
build:
needs: [examples, packages, flutter_packages, cli_packages]
runs-on: ubuntu-latest
steps:
- name: noop
run: echo 'noop'