name: Test

on:
  push:
    branches: ["main"]
  pull_request:
    branches: ["main"]

permissions:
  contents: read

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
      - name: Setup repo
        uses: actions/checkout@v3

      - name: Setup Deno
        uses: denoland/setup-deno@v1
        with:
          deno-version: v1.37

      - name: Run build
        run: deno task build

      - name: Run static type check
        run: deno task check

      - name: Run tests
        run: deno task test --trace-ops