Test #2553
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 | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
schedule: | |
- cron: '11 11 * * 1' | |
workflow_dispatch: | |
jobs: | |
build: | |
uses: ./.github/workflows/build.yml | |
node-versions: | |
uses: panva/.github/.github/workflows/node-versions.yml@main | |
with: | |
min: 20 | |
node: | |
needs: | |
- node-versions | |
strategy: | |
fail-fast: false | |
matrix: | |
node-version: ${{ fromJSON(needs.node-versions.outputs.matrix) }} | |
suite: | |
- tap:node | |
- test | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup node | |
id: node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'npm' | |
check-latest: true | |
- run: npm clean-install | |
- name: Run Test Suite | |
run: npm run ${{ matrix.suite }} | |
deno: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: denoland/setup-deno@v1 | |
with: | |
deno-version: latest | |
- name: Setup node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: 'npm' | |
- run: npm clean-install | |
- name: Test Deno Definitions | |
run: | | |
npm run build:deno | |
deno check dist/deno/index.ts | |
- name: Test Deno | |
run: npm run tap:deno | |
bun: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: oven-sh/setup-bun@v1 | |
with: | |
bun-version: latest | |
- name: Setup node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: 'npm' | |
- run: npm clean-install | |
- name: Test Bun | |
run: npm run tap:bun | |
workerd: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: 'npm' | |
- run: npm clean-install | |
- run: npm install --global workerd | |
- name: Run Test Suite | |
run: npm run tap:workerd | |
edge-runtime: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: 'npm' | |
- run: npm clean-install | |
- name: Run Test Suite | |
run: npm run tap:edge-runtime | |
browsers: | |
runs-on: ${{ matrix.runs-on || 'ubuntu-latest' }} | |
strategy: | |
fail-fast: false | |
matrix: | |
browser: | |
- chrome:headless | |
- firefox:headless | |
- edge:headless | |
include: | |
- runs-on: macos-14 | |
browser: safari | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: 'npm' | |
- run: npm clean-install | |
- run: npm install --global testcafe@3 | |
- name: Add rows to the TCC.db | |
if: ${{ matrix.runs-on == 'macos-14' }} | |
run: | | |
sudo sqlite3 "$HOME/Library/Application Support/com.apple.TCC/TCC.db" "INSERT OR REPLACE INTO access VALUES('kTCCServiceAppleEvents','com.devexpress.testcafe-browser-tools',0,2,3,1,X'fade0c0000000068000000010000000700000007000000080000001443fa4ca5141baeda21aeca1f50894673b440d4690000000800000014f8afcf6e69791b283e55bd0b03e39e422745770e0000000800000014bf4fc1aed64c871a49fc6bc9dd3878ce5d4d17c6',NULL,0,'com.apple.Safari',X'fade0c000000002c00000001000000060000000200000010636f6d2e6170706c652e53616661726900000003',NULL,1687952810,NULL,NULL,'UNUSED',1687952810);" | |
sudo sqlite3 "/Library/Application Support/com.apple.TCC/TCC.db" "INSERT OR REPLACE INTO access VALUES('kTCCServiceScreenCapture','com.devexpress.testcafe-browser-tools',0,2,3,1,X'fade0c0000000068000000010000000700000007000000080000001443fa4ca5141baeda21aeca1f50894673b440d4690000000800000014f8afcf6e69791b283e55bd0b03e39e422745770e0000000800000014bf4fc1aed64c871a49fc6bc9dd3878ce5d4d17c6',NULL,0,'UNUSED',NULL,0,1687952810,NULL,NULL,'UNUSED',1687952810);" | |
- name: Run Test Suite | |
run: npm run tap:browsers | |
env: | |
BROWSER: ${{ matrix.browser }} | |
electron: | |
runs-on: macos-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: 'npm' | |
- run: npm clean-install | |
- name: Install Electron | |
run: npm install --global electron | |
- name: Run Test Suite | |
run: npm run tap:electron |