name: Test

on: [push, pull_request]

jobs:
  release:
    runs-on: ${{ matrix.os }}

    strategy:
      matrix:
        os: [macos-latest, windows-latest, ubuntu-latest]

    steps:
      - name: Check out Git repository
        uses: actions/checkout@v1

      - name: Install Node.js, NPM and Yarn
        uses: actions/setup-node@v1
        with:
          node-version: 15

      - name: yarn install
        run: |
          yarn install --frozen-lockfile --network-timeout 300000

      - name: yarn test
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          yarn package
          yarn lint
          yarn tsc
          yarn test
