summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml')
-rw-r--r--testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml83
1 files changed, 83 insertions, 0 deletions
diff --git a/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml b/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml
new file mode 100644
index 0000000000..470f5bc960
--- /dev/null
+++ b/testing/web-platform/tests/tools/third_party/websockets/.github/workflows/tests.yml
@@ -0,0 +1,83 @@
+name: Run tests
+
+on:
+ push:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+
+env:
+ WEBSOCKETS_TESTS_TIMEOUT_FACTOR: 10
+
+jobs:
+ coverage:
+ name: Run test coverage checks
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v4
+ - name: Install Python 3.x
+ uses: actions/setup-python@v4
+ with:
+ python-version: "3.x"
+ - name: Install tox
+ run: pip install tox
+ - name: Run tests with coverage
+ run: tox -e coverage
+ - name: Run tests with per-module coverage
+ run: tox -e maxi_cov
+
+ quality:
+ name: Run code quality checks
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v4
+ - name: Install Python 3.x
+ uses: actions/setup-python@v4
+ with:
+ python-version: "3.x"
+ - name: Install tox
+ run: pip install tox
+ - name: Check code formatting
+ run: tox -e black
+ - name: Check code style
+ run: tox -e ruff
+ - name: Check types statically
+ run: tox -e mypy
+
+ matrix:
+ name: Run tests on Python ${{ matrix.python }}
+ needs:
+ - coverage
+ - quality
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ python:
+ - "3.8"
+ - "3.9"
+ - "3.10"
+ - "3.11"
+ - "pypy-3.8"
+ - "pypy-3.9"
+ is_main:
+ - ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
+ exclude:
+ - python: "pypy-3.8"
+ is_main: false
+ - python: "pypy-3.9"
+ is_main: false
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v4
+ - name: Install Python ${{ matrix.python }}
+ uses: actions/setup-python@v4
+ with:
+ python-version: ${{ matrix.python }}
+ - name: Install tox
+ run: pip install tox
+ - name: Run tests
+ run: tox -e py