mirror of
https://github.com/callstack/react-native-testing-library.git
synced 2026-09-18 23:09:04 +08:00
521 lines
13 KiB
YAML
521 lines
13 KiB
YAML
name: CI
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: ['**']
|
|
|
|
# Set minimal permissions by default
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: ${{ !contains(github.ref, 'main')}}
|
|
|
|
jobs:
|
|
lint:
|
|
runs-on: ubuntu-latest
|
|
name: Lint
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
|
|
- name: Lint
|
|
run: yarn lint
|
|
|
|
- name: Format
|
|
run: yarn format:check
|
|
|
|
typecheck:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
- name: Typecheck React 19.2-only tests
|
|
run: yarn typecheck:react-19_2
|
|
|
|
docs:
|
|
runs-on: ubuntu-latest
|
|
name: Docs
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
|
|
- name: Check generated package docs
|
|
run: yarn docs:check
|
|
|
|
- name: Setup Node.js and website deps
|
|
uses: ./.github/actions/setup-website-deps
|
|
|
|
- name: Validate website docs
|
|
run: yarn --cwd website validate
|
|
|
|
typecheck-rn-0-87:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.87
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.3
|
|
react-native-version: ~0.87.1
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
- name: Typecheck React 19.2-only tests
|
|
run: yarn typecheck:react-19_2
|
|
|
|
typecheck-rn-0-86:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.86
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.3
|
|
react-native-version: ~0.86.3
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
- name: Typecheck React 19.2-only tests
|
|
run: yarn typecheck:react-19_2
|
|
|
|
typecheck-rn-0-85:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.85
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.3
|
|
react-native-version: ~0.85.0
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
- name: Typecheck React 19.2-only tests
|
|
run: yarn typecheck:react-19_2
|
|
|
|
typecheck-rn-0-84:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.84
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.3
|
|
react-native-version: ~0.84.1
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
- name: Typecheck React 19.2-only tests
|
|
run: yarn typecheck:react-19_2
|
|
|
|
typecheck-rn-0-83:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.83
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.0
|
|
react-native-version: ~0.83.4
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
- name: Typecheck React 19.2-only tests
|
|
run: yarn typecheck:react-19_2
|
|
|
|
typecheck-rn-0-82:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.82
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.1.1
|
|
react-native-version: ~0.82.1
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
typecheck-rn-0-81:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.81
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.1.4
|
|
react-native-version: ~0.81.6
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
typecheck-rn-0-80:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.80.3
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.1.0
|
|
react-native-version: 0.80.3
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
typecheck-rn-0-79:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.79.7
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.0.0
|
|
react-native-version: 0.79.7
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
typecheck-rn-0-78:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN 0.78.3
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.0.0
|
|
react-native-version: 0.78.3
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
typecheck-rn-latest:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN Latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps-rn-latest
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
typecheck-rn-next:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN Next
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps-rn-next
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
typecheck-rn-nightly:
|
|
runs-on: ubuntu-latest
|
|
name: Typecheck → RN Nightly
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps-rn-nightly
|
|
|
|
- name: Typecheck
|
|
run: yarn typecheck
|
|
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
name: Test
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
|
|
- name: Test
|
|
run: yarn test:ci:coverage
|
|
|
|
- name: Upload coverage to Codecov
|
|
uses: codecov/codecov-action@e53489f4d376d79066609109e7a95a29eb3740b1 # v7.0.0
|
|
env:
|
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
|
|
|
test-codemods:
|
|
runs-on: ubuntu-latest
|
|
name: Test Codemods
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
|
|
- name: Test
|
|
run: yarn test:codemods
|
|
|
|
test-rn-0-87:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.87
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.3
|
|
react-native-version: ~0.87.1
|
|
test-renderer-version: ~1.2.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-86:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.86
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.3
|
|
react-native-version: ~0.86.3
|
|
test-renderer-version: ~1.2.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-85:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.85
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.3
|
|
react-native-version: ~0.85.0
|
|
test-renderer-version: ~1.2.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-84:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.84
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.3
|
|
react-native-version: ~0.84.1
|
|
test-renderer-version: ~1.2.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-83:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.83
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.2.0
|
|
react-native-version: ~0.83.4
|
|
test-renderer-version: ~1.2.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-82:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.82
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.1.1
|
|
react-native-version: ~0.82.1
|
|
test-renderer-version: ~1.1.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-81:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.81
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.1.4
|
|
react-native-version: ~0.81.6
|
|
test-renderer-version: ~1.1.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-80:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.80
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.1.0
|
|
react-native-version: ~0.80.3
|
|
test-renderer-version: ~1.1.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-79:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.79
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.0.0
|
|
react-native-version: ~0.79.7
|
|
test-renderer-version: ~1.0.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-0-78:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN 0.78
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps
|
|
with:
|
|
react-version: 19.0.0
|
|
react-native-version: ~0.78.3
|
|
test-renderer-version: ~1.0.0
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-latest:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN Latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps-rn-latest
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-next:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN Next
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps-rn-next
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|
|
|
|
test-rn-nightly:
|
|
runs-on: ubuntu-latest
|
|
name: Test → RN Nightly
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
|
|
- name: Setup Node.js and deps
|
|
uses: ./.github/actions/setup-deps-rn-nightly
|
|
|
|
- name: Test
|
|
run: yarn test:ci
|