Files
test-repo/.github/workflows/dev-test.yml
T
renovate[bot] fdd766602e Update actions/checkout to v7 (#19405)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-20 05:03:42 +08:00

84 lines
2.5 KiB
YAML

name: Dev
on:
push:
branches:
- main
- next
- v*
- patch-release
- "!renovate/**"
pull_request:
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
os:
- "ubuntu-latest"
- "macos-latest"
- "windows-latest"
node:
# Latest version
- "26"
# Minimal version for development
- "22"
include:
- os: "ubuntu-latest"
# Pick a version that is fast (normally highest LTS version)
# Doesn't work on Node.js v26 https://github.com/bcoe/c8/issues/592
node: "24"
ENABLE_CODE_COVERAGE: true
FULL_TEST: true
# Versions between "Latest version" and "Minimal version for development"
# that not tested on linux
# - os: "ubuntu-latest"
# node: "22"
env:
ENABLE_CODE_COVERAGE: ${{ matrix.ENABLE_CODE_COVERAGE }}
FULL_TEST: ${{ matrix.FULL_TEST }}
name: ${{ matrix.FULL_TEST && '[Full Test] ' || '' }} Node.js ${{ matrix.node }} on ${{ startsWith(matrix.os, 'macos') && 'MacOS' || startsWith(matrix.os, 'windows') && 'Windows' || 'Linux' }}
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- name: Setup Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: ${{ matrix.node }}
cache: "yarn"
- name: Install Dependencies
run: yarn install --immutable
- name: Run Tests
if: ${{ !matrix.ENABLE_CODE_COVERAGE }}
run: yarn test
- name: Run Tests (coverage)
if: ${{ matrix.ENABLE_CODE_COVERAGE }}
run: yarn c8 yarn test
- name: Upload Coverage
uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0
if: ${{ matrix.ENABLE_CODE_COVERAGE && github.repository == 'prettier/prettier' }}
with:
fail_ci_if_error: true
disable_search: true
files: coverage/lcov.info
token: ${{ secrets.CODECOV_TOKEN }}
- name: "`--debug-benchmark` flag"
if: ${{ matrix.os != 'windows-latest' }}
run: node bin/prettier.cjs --debug-benchmark package.json 2>&1 >/dev/null | grep "Latency avg" || exit 1