name: Test

on: [push, pull_request]

jobs:
  test:
    runs-on: ubuntu-18.04
    strategy:
      matrix:
        python-version:
          - 3.4
          - 3.5
          - 3.6
          - 3.7
          - 3.8
          - 3.9
      fail-fast: false
    steps:
      - uses: actions/checkout@v2
      - name: Set up Python ${{ matrix.python-version }}
        uses: actions/setup-python@v2
        with:
          python-version: ${{ matrix.python-version }}
      - name: Install dependencies
        run: |
          python -m pip install --upgrade pip
          python -m pip install setuptools
          python -m pip install -r test-requirements.txt
      - name: Install old numpy
        run: |
          python -m pip install 'numpy<1.17'
        if: ${{ matrix.python-version >= '3.4' && matrix.python-version < '3.7' }}
      - name: Run tests
        run: |
          python setup.py nosetests --verbosity=3
