name: NodeTests
on:
    push:
        branches:
            - master
        paths:
            - 'querybook/**/*.jsx?'
            - 'querybook/**/*.tsx?'
            - 'querybook/**/*.s?css'
            - 'querybook/**/*.html'
            - 'package.json'
    pull_request:
        paths:
            - 'querybook/**/*.jsx?'
            - 'querybook/**/*.tsx?'
            - 'querybook/**/*.s?css'
            - 'querybook/**/*.html'
            - 'package.json'
jobs:
    nodetests:
        runs-on: ubuntu-latest
        steps:
            - uses: actions/checkout@v2
            - uses: actions/setup-node@v2
              with:
                  node-version: '14'
            - name: Get yarn cache directory path
              id: yarn-cache-dir-path
              run: echo "::set-output name=dir::$(yarn cache dir)"
            - uses: actions/cache@v2
              id: yarn-cache
              with:
                  path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
                  key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
                  restore-keys: |
                      ${{ runner.os }}-yarn-
            - run: yarn install --frozen-lockfile --prefer-offline
            - run: ./querybook/scripts/run_test --node