trigger:
  batch: true
  branches:
    include:
    - '*'

jobs:

- job: 'Test'
  strategy:
    matrix:
      Python27Linux:
        imageName: 'ubuntu-16.04'
        python.version: '2.7'
      Python27Mac:
        imageName: 'macos-10.13'
        python.version: '2.7'
      Python35Linux:
        imageName: 'ubuntu-16.04'
        python.version: '3.5'
      Python35Windows:
        imageName: 'vs2017-win2016'
        python.version: '3.5'
      Python35Mac:
        imageName: 'macos-10.13'
        python.version: '3.5'
      Python36Linux:
        imageName: 'ubuntu-16.04'
        python.version: '3.6'
      Python36Windows:
        imageName: 'vs2017-win2016'
        python.version: '3.6'
      Python36Mac:
        imageName: 'macos-10.13'
        python.version: '3.6'
      Python37Linux:
        imageName: 'ubuntu-16.04'
        python.version: '3.7'
      Python37Windows:
        imageName: 'vs2017-win2016'
        python.version: '3.7'
      Python37Mac:
        imageName: 'macos-10.13'
        python.version: '3.7'
    maxParallel: 4
  pool:
    vmImage: $(imageName)

  steps:
  - task: UsePythonVersion@0
    inputs:
      versionSpec: '$(python.version)'
      architecture: 'x64'

  - script: python setup.py sdist
    displayName: 'Build sdist'

  - task: DeleteFiles@1
    inputs:
      contents: 'catalogue.py'
    displayName: 'Delete source directory'

  - bash: |
      SDIST=$(python -c "import os;print(os.listdir('./dist')[-1])" 2>&1)
      pip install dist/$SDIST
    displayName: 'Install from sdist'

  - script: |
      pip install -U pip pytest
      python -m pytest --pyargs catalogue
    displayName: 'Run tests'

Set up CI with Azure Pipelines
Set up CI with Azure Pipelines

[skip ci]