parameters:
  vmImage:

jobs:
- job: Test_Primary
  displayName: Tests /

  pool:
    vmImage: ${{ parameters.vmImage }}
  strategy:
    matrix:
      "2.7":
        python.version: '2.7'
        python.architecture: x64
      "3.6":
        python.version: '3.6'
        python.architecture: x64
    maxParallel: 2

  steps:
  - template: ../steps/run-tests.yml

- job: Test_Secondary
  displayName: Tests /
  # Run after Test_Primary so we don't devour time and jobs if tests are going to fail
  dependsOn: Test_Primary

  pool:
    vmImage: ${{ parameters.vmImage }}
  strategy:
    matrix:
      "3.5":
        python.version: '3.5'
        python.architecture: x64
      "3.7":
        python.version: '3.7'
        python.architecture: x64
      "3.8":
        python.version: '3.8'
        python.architecture: x64
    maxParallel: 4

  steps:
  - template: ../steps/run-tests.yml
