Skip to content

feat: add tests workflow for bun and deno #2415

feat: add tests workflow for bun and deno

feat: add tests workflow for bun and deno #2415

Workflow file for this run

name: Tests
on: [pull_request, push]
jobs:
test-node:
name: Tests Node
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node: [18, 20]
steps:
- uses: actions/checkout@v3
- run: corepack enable
- uses: actions/setup-node@v4
with:
node-version: ${{matrix.node}}
cache: yarn
- name: Bootstrap
run: yarn --immutable
- name: Build
run: yarn build
- name: Generate
run: yarn generate
- name: Check types
run: yarn check-types
- name: Lint
run: yarn lint
- uses: "./.github/actions/multi-runtime-tests"
with:
runtime: nodejs
test-bun:
name: Tests Bun
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Install Yarn
run: bun install -g npm:yarn
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Install
run: yarn install --frozen-lockfile
- name: Build
run: bun run --bun build
- name: Generate
run: bun run --bun generate
- uses: "./.github/actions/multi-runtime-tests"
with:
runtime: bun
test-deno:
name: Test Deno
runs-on: ubuntu-latest
steps:
# <common-build> - Uses YAML anchors in the future
- uses: actions/checkout@v2
- uses: actions/setup-node@v2-beta
with:
node-version: "22"
- uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Install
run: yarn install --frozen-lockfile
- name: Build
run: deno run -A build
- name: Generate
run: deno run -A generate
- name: Unit tests
run: deno run -A test:unit
- uses: "./.github/actions/multi-runtime-tests"
with:
runtime: deno