name: Core Tests
on: [push, pull_request]
+permissions:
+ contents: read
+
+concurrency:
+ group: core-${{ github.event.pull_request.number || github.ref }}
+ cancel-in-progress: ${{ github.event_name == 'pull_request' }}
+
jobs:
tests:
name: Core Tests
strategy:
fail-fast: false
matrix:
- os: [ubuntu-18.04]
- # py3.9 is in quick-test
- python-version: [3.7, 3.8, pypy-3.6, pypy-3.7]
+ os: [ubuntu-latest]
+ # CPython 3.11 is in quick-test
+ python-version: ['3.8', '3.9', '3.10', '3.12', pypy-3.8, pypy-3.10]
run-tests-ext: [sh]
include:
- # atleast one of the tests must be in windows
+ # atleast one of each CPython/PyPy tests must be in windows
- os: windows-latest
- python-version: 3.6
+ python-version: '3.8'
+ run-tests-ext: bat
+ - os: windows-latest
+ python-version: '3.12'
+ run-tests-ext: bat
+ - os: windows-latest
+ python-version: pypy-3.9
run-tests-ext: bat
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v2
+ uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- - name: Install nose
- run: pip install nose
+ - name: Install test requirements
+ run: pip install pytest -r requirements.txt
- name: Run tests
continue-on-error: False
- env:
- YTDL_TEST_SET: core
- run: ./devscripts/run_tests.${{ matrix.run-tests-ext }}
- # Linter is in quick-test
+ run: |
+ python3 -m yt_dlp -v || true # Print debug head
+ ./devscripts/run_tests.${{ matrix.run-tests-ext }} core