WIP: [objective_c] Migrate to native assets #912
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | name: objective_c | |
| on: | |
| # Run on PRs and pushes to the default branch. | |
| push: | |
| branches: [main, stable] | |
| paths: | |
| - '.github/workflows/objective_c.yaml' | |
| - 'pkgs/ffigen/**' | |
| - 'pkgs/objective_c/**' | |
| pull_request: | |
| branches: [main, stable] | |
| paths: | |
| - '.github/workflows/objective_c.yaml' | |
| - 'pkgs/ffigen/**' | |
| - 'pkgs/objective_c/**' | |
| schedule: | |
| - cron: "0 0 * * 0" | |
| env: | |
| PUB_ENVIRONMENT: bot.github | |
| jobs: | |
| # Check code formatting and static analysis. | |
| analyze: | |
| runs-on: macos-latest | |
| defaults: | |
| run: | |
| working-directory: pkgs/objective_c/ | |
| strategy: | |
| fail-fast: false | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
| - uses: dart-lang/setup-dart@e51d8e571e22473a2ddebf0ef8a2123f0ab2c02c | |
| with: | |
| sdk: dev | |
| - id: install | |
| name: Install dependencies | |
| run: dart pub get | |
| - name: Check formatting | |
| run: dart format --output=none --set-exit-if-changed . | |
| if: always() && steps.install.outcome == 'success' | |
| - name: Analyze code | |
| run: dart analyze --fatal-infos | |
| if: always() && steps.install.outcome == 'success' | |
| test-mac: | |
| needs: analyze | |
| runs-on: 'macos-latest' | |
| defaults: | |
| run: | |
| working-directory: pkgs/objective_c/ | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
| - uses: dart-lang/setup-dart@e51d8e571e22473a2ddebf0ef8a2123f0ab2c02c | |
| with: | |
| sdk: dev | |
| - name: Install dependencies | |
| run: dart pub get | |
| - name: Install coverage | |
| run: dart pub global activate coverage | |
| - name: Run VM tests and collect coverage | |
| run: dart pub global run coverage:test_with_coverage --scope-output=ffigen --scope-output=objective_c | |
| - name: Verify generated code is up to date | |
| # test/generate_code_test.dart runs the code generator, so if there are | |
| # any git-diffs at this point, it means the generated code is outdated. | |
| run: if [[ -n $(git status --porcelain | tee /dev/stderr) ]]; then echo -e "\nDIFF:"; git diff; false; fi | |
| - name: Upload coverage | |
| uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b | |
| with: | |
| flag-name: objective_c | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| parallel: true | |
| path-to-lcov: pkgs/objective_c/coverage/lcov.info | |
| - name: Upload coverage | |
| uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b | |
| with: | |
| carryforward: "ffigen,jni,jnigen,native_pkgs_macos,native_pkgs_ubuntu,native_pkgs_windows,objective_c,swift2objc,swiftgen" | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| parallel-finished: true | |
| build-example: | |
| needs: analyze | |
| runs-on: 'macos-latest' | |
| defaults: | |
| run: | |
| working-directory: pkgs/objective_c/example | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
| - uses: dart-lang/setup-dart@e51d8e571e22473a2ddebf0ef8a2123f0ab2c02c | |
| with: | |
| sdk: dev | |
| - name: Install dependencies | |
| run: dart pub get | |
| - name: Run the example app | |
| run: dart run lib/main.dart |