name: Quick Test
on: [push, pull_request]
permissions:
  contents: read

jobs:
  tests:
    name: Core Test
    if: "!contains(github.event.head_commit.message, 'ci skip all')"
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - name: Set up Python 3.8
      uses: actions/setup-python@v4
      with:
        python-version: '3.8'
    - name: Install test requirements
      run: pip install pytest -r requirements.txt
    - name: Run tests
      run: |
        python3 -m yt_dlp -v || true
        python3 ./devscripts/run_tests.py core
  flake8:
    name: Linter
    if: "!contains(github.event.head_commit.message, 'ci skip all')"
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: actions/setup-python@v4
    - name: Install flake8
      run: pip install flake8
    - name: Make lazy extractors
      run: python devscripts/make_lazy_extractors.py
    - name: Run flake8
      run: flake8 .