name: build

on: [push, pull_request]

jobs:
    build:
        runs-on: ubuntu-latest

        steps:
            - uses: actions/checkout@v4
            - name: Using Node 20
              uses: actions/setup-node@v4
              with:
                  node-version: 20
            - name: Update npm version to latest
              run: npm install -g npm@latest # stop showing warnings about the lockfile
            - name: Install dependencies
              run: |
                  npm config set //npm.pkg.github.com/:_authToken=$NODE_AUTH_TOKEN
                  npm install
              env:
                  NODE_AUTH_TOKEN: ${{github.token}}
            - name: Run tests
              run: npm run test
