Files
test-repo/.github/workflows/dev-test.yml
T
fisker Cheung ec2b75dce9 Merge branch 'main' into next
# Conflicts:
#	.github/workflows/validate-vendor-versions.yml
#	package.json
#	scripts/build/bundler.mjs
2022-02-28 21:06:23 +08:00

98 lines
2.7 KiB
YAML

name: Dev
on:
push:
branches:
- main
- patch-release
- next
pull_request:
jobs:
test:
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
os:
- "ubuntu-latest"
- "macos-latest"
- "windows-latest"
node:
- "16.10.0"
- "14"
- "12"
include:
# only enable coverage on the fastest job
- os: "ubuntu-latest"
node: "16.10.0"
ENABLE_CODE_COVERAGE: true
FULL_TEST: true
CHECK_TEST_PARSERS: true
exclude:
- os: "macos-latest"
node: "14"
- os: "windows-latest"
node: "14"
env:
ENABLE_CODE_COVERAGE: ${{ matrix.ENABLE_CODE_COVERAGE }}
FULL_TEST: ${{ matrix.FULL_TEST }}
CHECK_TEST_PARSERS: ${{ matrix.CHECK_TEST_PARSERS }}
name: Node.js ${{ matrix.node }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v2.4.0
# `codecov/codecov-action` require depth to be at least `2`, see #10219
with:
fetch-depth: 2
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node }}
cache: "yarn"
- name: Install Dependencies
run: yarn install --frozen-lockfile
# - name: Run Integration Tests (macOS)
# if: ${{ matrix.os == 'macos-latest' }}
# run: yarn test:integration --maxWorkers=4
# - name: Run Integration Tests (Linux and Windows)
# if: ${{ matrix.os != 'macos-latest' }}
# run: yarn test:integration --maxWorkers=2
# - name: Upload Coverage
# uses: codecov/codecov-action@v2.1.0
# if: ${{ matrix.ENABLE_CODE_COVERAGE }}
# with:
# fail_ci_if_error: true
- name: Run Format Tests (macOS)
if: ${{ matrix.os == 'macos-latest' }}
run: yarn test:format --maxWorkers=4
- name: Run Format Tests (Linux and Windows)
if: ${{ matrix.os != 'macos-latest' }}
run: yarn c8 yarn test:format --maxWorkers=2
- name: Upload Coverage
uses: codecov/codecov-action@v2.1.0
if: ${{ matrix.ENABLE_CODE_COVERAGE }}
with:
fail_ci_if_error: true
# # #8073 test
# - name: Run Tests (PRETTIER_FALLBACK_RESOLVE)
# run: yarn test "tests/integration/__tests__/(config|plugin)"
# env:
# PRETTIER_FALLBACK_RESOLVE: true
# - name: Upload Coverage (PRETTIER_FALLBACK_RESOLVE)
# uses: codecov/codecov-action@v2.1.0
# if: ${{ matrix.ENABLE_CODE_COVERAGE }}
# with:
# fail_ci_if_error: true