name: test on: push: branches: - master pull_request: branches: - master - dev jobs: test: name: python ${{ matrix.python-version }} on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] python-version: ['3.7', '3.8', '3.9', '3.10', '3.11'] fail-fast: true steps: - name: checkout uses: actions/checkout@v3 - name: setup python ${{ matrix.python-version }} on ${{ matrix.os }} uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: setup poetry uses: abatilo/actions-poetry@v2 with: poetry-version: 1.2.2 - name: install deps run: poetry install - name: test run: poetry run tox -e test - name: upload cov uses: codecov/codecov-action@v3 with: files: ./coverage.xml fail_ci_if_error: true verbose: true test_npm: name: node ${{ matrix.node }} with python ${{ matrix.python-version }} on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: # remove macos, can't get xcode working yet for installing regex # remove windows-latest, half tests seem to randomly pass matrix: os: [ubuntu-latest] python-version: ['3.7', '3.8', '3.9', '3.10', '3.11'] node: [12, 14, 16] fail-fast: true steps: - name: install xcode if: ${{ matrix.os == 'macos-latest' }} uses: maxim-lobanov/setup-xcode@v1 with: xcode-version: latest-stable - name: install xcode cli tools if: ${{ matrix.os == 'macos-latest' }} run: sudo xcode-select --reset - name: checkout uses: actions/checkout@v3 - name: setup python ${{ matrix.python-version }} on ${{ matrix.os }} uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: setup node ${{ matrix.node }} on ${{ matrix.os }} uses: actions/setup-node@v3 with: node-version: ${{ matrix.node }} - name: install project run: npm --omit=dev install - name: test run help run: djlint -h - name: test run lint run: echo "