mirror of
https://github.com/vodemn/m3_lightmeter.git
synced 2024-11-21 23:10:40 +00:00
run golden tests on ci
This commit is contained in:
parent
7def552749
commit
467f13e5e4
2 changed files with 76 additions and 2 deletions
10
.github/workflows/pr_check.yml
vendored
10
.github/workflows/pr_check.yml
vendored
|
@ -12,7 +12,7 @@ on:
|
|||
branches: ["main"]
|
||||
|
||||
jobs:
|
||||
analyze_and_test:
|
||||
analyze-and-test:
|
||||
name: Analyze & test
|
||||
runs-on: macos-11
|
||||
timeout-minutes: 10
|
||||
|
@ -61,4 +61,10 @@ jobs:
|
|||
run: |
|
||||
bash ./.github/scripts/stub_iap.sh
|
||||
flutter pub get
|
||||
flutter analyze lib --fatal-infos
|
||||
flutter analyze lib --fatal-infos
|
||||
|
||||
run-golden-tests:
|
||||
name: Run golden tests
|
||||
needs: [analyze-and-test]
|
||||
uses: ./.github/workflows/run_golden_tests.yml
|
||||
secrets: inherit
|
||||
|
|
68
.github/workflows/run_golden_tests.yml
vendored
Normal file
68
.github/workflows/run_golden_tests.yml
vendored
Normal file
|
@ -0,0 +1,68 @@
|
|||
# This workflow uses actions that are not certified by GitHub.
|
||||
# They are provided by a third-party and are governed by
|
||||
# separate terms of service, privacy policy, and support
|
||||
# documentation.
|
||||
|
||||
name: Run golden tests
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
update-goldens:
|
||||
type: boolean
|
||||
description: Update goldens
|
||||
default: false
|
||||
workflow_call:
|
||||
inputs:
|
||||
update-goldens:
|
||||
type: boolean
|
||||
description: Update goldens
|
||||
default: false
|
||||
|
||||
jobs:
|
||||
run-golden-tests:
|
||||
name: Run golden tests
|
||||
timeout-minutes: 5
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- uses: subosito/flutter-action@v2
|
||||
with:
|
||||
channel: "stable"
|
||||
flutter-version: "3.13.9"
|
||||
|
||||
- name: Prepare app
|
||||
run: |
|
||||
flutter --version
|
||||
flutter pub get
|
||||
flutter pub run intl_utils:generate
|
||||
|
||||
- name: Run tests
|
||||
env:
|
||||
UPDATE_GOLDENS: ${{inputs.update-goldens && '--update-goldens' || '' }}ƒ
|
||||
run: |
|
||||
goldens=$(find ./test -name "*_golden_test.dart" -print)
|
||||
for f in $goldens; do
|
||||
flutter test "$f"\
|
||||
--dart-define cameraStubImage=assets/camera_stub_image.jpg \
|
||||
$UPDATE_GOLDENS
|
||||
done
|
||||
|
||||
- name: Commit changes
|
||||
if: ${{ inputs.update-goldens }}
|
||||
run: |
|
||||
git config --local user.email "github-actions[bot]@users.noreply.github.com"
|
||||
git config --local user.name "github-actions[bot]"
|
||||
git add -A
|
||||
git commit -m "Updated goldens"
|
||||
|
||||
- name: Push to main
|
||||
if: ${{ inputs.update-goldens }}
|
||||
uses: CasperWA/push-protected@v2
|
||||
with:
|
||||
token: ${{ secrets.PUSH_TO_MAIN_TOKEN }}
|
||||
branch: ${{ github.ref_name }}
|
||||
unprotect_reviews: true
|
Loading…
Reference in a new issue