name: Tests on: pull_request: branches: - main - docusaurus-v** paths: - package.json - yarn.lock - jest.config.mjs - packages/** - tsconfig.*.json - .github/workflows/tests.yml concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true permissions: contents: read jobs: test: name: Tests timeout-minutes: 30 runs-on: ubuntu-latest strategy: matrix: node: ['18.0', '20', '22'] steps: - name: Checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Use Node.js ${{ matrix.node }} uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2 with: node-version: ${{ matrix.node }} cache: yarn - name: Installation run: yarn - name: Test run: yarn test - name: Remove Theme Internal Re-export run: yarn workspace @docusaurus/theme-common removeThemeInternalReexport - name: Docusaurus Build run: yarn build:website:fast - name: TypeCheck website run: yarn workspace website typecheck - name: TypeCheck website - min version - v5.1 run: | yarn add typescript@5.1.6 --exact -D -W --ignore-scripts yarn workspace website typecheck - name: TypeCheck website - max version - Latest run: | yarn add typescript@latest --exact -D -W --ignore-scripts yarn workspace website typecheck