name: Turbo test
on:
  pull_request:
    paths:
      - "**.tsx?"
      - "**.jsx?"
      - "**.json"
      - "**.sol"
      - "**/package.json"
      - "**/package-lock.json"
      - "**/tsconfig.json"
      - .github/workflows/ci-turbo-test.yml
  push:
    branches: [main]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version-file: "package.json"
      # Libusb is a build requirement for the node-hid package and so pnpm
      # install will fail if this isn't in the build environment and if a
      # precompiled binary isn't found.
      - name: Install libusb
        run: sudo apt-get update && sudo apt-get install -y libusb-1.0-0-dev libudev-dev
      - uses: pnpm/action-setup@v4
        name: Install pnpm
        with:
          run_install: true
      - name: Cache for Turbo
        uses: rharkor/caching-for-turbo@v1.5
      - name: Test
        run: pnpm turbo test
