Update testing docs #1645
Workflow file for this run
This file contains 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: Test Multiple Versions | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
types: [opened, synchronize] | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: '18' | |
cache: yarn | |
- run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* | |
- run: yarn install --frozen-lockfile --check-files | |
- name: Test Build # we don't have any other workflows to test build | |
run: yarn build | |
- name: Test Default | |
run: yarn test:ci | |
test_matrix: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
react: | |
- 16.8.0 | |
- 17.0.0 | |
- 18.0.0 | |
- 18.1.0 | |
- 18.2.0 | |
- 18.3.0-canary-997f52fbb-20230803 | |
- 0.0.0-experimental-997f52fbb-20230803 | |
devtools-skip: | |
- CI-MATRIX-NOSKIP | |
include: | |
- devtools-skip: CI-MATRIX-[2345] | |
react: 16.8.0 | |
- devtools-skip: CI-MATRIX-[1345] | |
react: 16.8.0 | |
- devtools-skip: CI-MATRIX-[1245] | |
react: 16.8.0 | |
- devtools-skip: CI-MATRIX-[1235] | |
react: 16.8.0 | |
- devtools-skip: CI-MATRIX-[1234] | |
react: 16.8.0 | |
exclude: | |
- devtools-skip: CI-MATRIX-NOSKIP | |
react: 16.8.0 | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: '18' | |
cache: yarn | |
- run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* | |
- run: yarn install --frozen-lockfile --check-files | |
- name: Install legacy testing-library | |
if: ${{ startsWith(matrix.react, '16.') || startsWith(matrix.react, '17.') }} | |
run: yarn add -D @testing-library/react@12.1.4 | |
- name: Patch for React 16 | |
if: ${{ startsWith(matrix.react, '16.') }} | |
run: | | |
sed -i~ '1s/^/import React from "react";/' tests/*.tsx | |
sed -i~ 's/"jsx": "react-jsx"/"jsx": "react"/' tsconfig.json | |
sed -i~ 's/import\.meta\.env[?]\.MODE/"DEVELOPMENT".toLowerCase()/' src/*.ts src/*/*.ts | |
sed -i~ "s/it('\[${DEVTOOLS_SKIP}\]/it.skip('/" tests/devtools.test.tsx | |
env: | |
DEVTOOLS_SKIP: ${{ matrix.devtools-skip }} | |
- name: Test ${{ matrix.react }} ${{ matrix.devtools-skip }} | |
run: | | |
yarn add -D react@${{ matrix.react }} react-dom@${{ matrix.react }} | |
yarn test:ci |