From 3bcaa37b1beb145d4c21e5932b0b91237a40f967 Mon Sep 17 00:00:00 2001 From: pukkandan Date: Sat, 23 Jan 2021 14:00:48 +0530 Subject: [PATCH] [tests] Split core and download tests --- .github/workflows/{ci.yml => core.yml} | 19 +++------ .github/workflows/download.yml | 53 ++++++++++++++++++++++++++ .github/workflows/quick-test.yml | 8 ++-- README.md | 3 +- 4 files changed, 63 insertions(+), 20 deletions(-) rename .github/workflows/{ci.yml => core.yml} (79%) create mode 100644 .github/workflows/download.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/core.yml similarity index 79% rename from .github/workflows/ci.yml rename to .github/workflows/core.yml index 260d07ff2..a916dffd3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/core.yml @@ -1,9 +1,9 @@ -name: Full Test +name: Core Tests on: [push, pull_request] jobs: tests: - name: Tests - if: "!contains(github.event.head_commit.message, 'skip ci')" + name: Core Tests + if: "!contains(github.event.head_commit.message, 'ci skip')" runs-on: ${{ matrix.os }} strategy: fail-fast: true @@ -12,7 +12,7 @@ jobs: # TODO: python 2.6 python-version: [2.7, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, pypy-2.7, pypy-3.6, pypy-3.7] python-impl: [cpython] - ytdl-test-set: [core, download] + ytdl-test-set: [core] run-tests-ext: [sh] include: # python 3.2 is only available on windows via setup-python @@ -21,20 +21,11 @@ jobs: python-impl: cpython ytdl-test-set: core run-tests-ext: bat - - os: windows-latest - python-version: 3.2 - python-impl: cpython - ytdl-test-set: download - run-tests-ext: bat # jython - os: ubuntu-latest python-impl: jython ytdl-test-set: core run-tests-ext: sh - - os: ubuntu-latest - python-impl: jython - ytdl-test-set: download - run-tests-ext: sh steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python-version }} @@ -60,4 +51,4 @@ jobs: env: YTDL_TEST_SET: ${{ matrix.ytdl-test-set }} run: ./devscripts/run_tests.${{ matrix.run-tests-ext }} - # flake8 has been moved to quick-test \ No newline at end of file + # Linter is in quick-test diff --git a/.github/workflows/download.yml b/.github/workflows/download.yml new file mode 100644 index 000000000..52bcf12d4 --- /dev/null +++ b/.github/workflows/download.yml @@ -0,0 +1,53 @@ +name: Download Tests +on: [push, pull_request] +jobs: + tests: + name: Download Tests + if: "!contains(github.event.head_commit.message, 'ci skip dl') || !contains(github.event.head_commit.message, 'ci skip all')" + runs-on: ${{ matrix.os }} + strategy: + fail-fast: true + matrix: + os: [ubuntu-18.04] + # TODO: python 2.6 + python-version: [2.7, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, pypy-2.7, pypy-3.6, pypy-3.7] + python-impl: [cpython] + ytdl-test-set: [download] + run-tests-ext: [sh] + include: + # python 3.2 is only available on windows via setup-python + - os: windows-latest + python-version: 3.2 + python-impl: cpython + ytdl-test-set: download + run-tests-ext: bat + # jython - disable for now since it takes too long to complete + # - os: ubuntu-latest + # python-impl: jython + # ytdl-test-set: download + # run-tests-ext: sh + steps: + - uses: actions/checkout@v2 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + if: ${{ matrix.python-impl == 'cpython' }} + with: + python-version: ${{ matrix.python-version }} + - name: Set up Java 8 + if: ${{ matrix.python-impl == 'jython' }} + uses: actions/setup-java@v1 + with: + java-version: 8 + - name: Install Jython + if: ${{ matrix.python-impl == 'jython' }} + run: | + wget http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.7.1/jython-installer-2.7.1.jar -O jython-installer.jar + java -jar jython-installer.jar -s -d "$HOME/jython" + echo "$HOME/jython/bin" >> $GITHUB_PATH + - name: Install nose + run: pip install nose + - name: Run tests + continue-on-error: ${{ matrix.ytdl-test-set == 'download' || matrix.python-impl == 'jython' }} + env: + YTDL_TEST_SET: ${{ matrix.ytdl-test-set }} + run: ./devscripts/run_tests.${{ matrix.run-tests-ext }} diff --git a/.github/workflows/quick-test.yml b/.github/workflows/quick-test.yml index 883679a14..06e9b03a1 100644 --- a/.github/workflows/quick-test.yml +++ b/.github/workflows/quick-test.yml @@ -1,13 +1,13 @@ -name: Core Test +name: Quick Test on: [push, pull_request] jobs: tests: name: Core Tests - if: "!contains(github.event.head_commit.message, 'skip ci all')" + if: "!contains(github.event.head_commit.message, 'ci skip all')" runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - name: Set up Python 3.9 + - name: Set up Python uses: actions/setup-python@v2 with: python-version: 3.9 @@ -19,7 +19,7 @@ jobs: run: ./devscripts/run_tests.sh flake8: name: Linter - if: "!contains(github.event.head_commit.message, 'skip ci all')" + if: "!contains(github.event.head_commit.message, 'ci skip all')" runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 diff --git a/README.md b/README.md index 2da25b200..71fc41684 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,7 @@ # YT-DLP [![Release Version](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/pukkandan/c69cb23c3c5b3316248e52022790aa57/raw/version.json&color=brightgreen)](https://github.com/pukkandan/yt-dlp/releases/latest) [![License: Unlicense](https://img.shields.io/badge/License-Unlicense-blue.svg)](https://github.com/pukkandan/yt-dlp/blob/master/LICENSE) -[![Core Status](https://github.com/pukkandan/yt-dlp/workflows/Core%20Test/badge.svg?branch=master)](https://github.com/pukkandan/yt-dlp/actions?query=workflow%3ACore) -[![CI Status](https://github.com/pukkandan/yt-dlp/workflows/Full%20Test/badge.svg?branch=master)](https://github.com/pukkandan/yt-dlp/actions?query=workflow%3AFull) +[![CI Status](https://github.com/pukkandan/yt-dlp/workflows/Core%20Tests/badge.svg?branch=master)](https://github.com/pukkandan/yt-dlp/actions) A command-line program to download videos from youtube.com and many other [video platforms](docs/supportedsites.md)