name: Test

on: [pull_request]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    
    - name: Read .python-version
      run: echo ::set-output name=python-version::$(cat .python-version)
      id: python-version    
          
    - uses: actions/setup-python@v2
      with:
        python-version: '${{ steps.python-version.outputs.python-version }}'
    
    - uses: actions/cache@v2
      with:
        path: ~/.npm
        key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
        restore-keys: |
          ${{ runner.os }}-node-    
    
    - uses: actions/cache@v2
      with:
        path: venv
        key: venv-${{ runner.os }}-${{ hashFiles('**/requirements*.txt') }}
        restore-keys: venv-${{ runner.os }}-
          
    - name: Install Node version
      shell: bash -l {0}
      run: nvm install

    - run: npm install    
    - run: make test
    - run: make generate_pages
