blob: 9cab85f421c6d1f0bf264c61fd753b5dffd64a81 [file] [log] [blame]
name: CI - Python
on:
workflow_call:
workflow_dispatch:
permissions:
contents: read
jobs:
build:
name: Build
uses: ./.github/workflows/bazel.yml
with:
name: Build
run: |
bazel build //py:selenium-wheel //py:selenium-sdist
lint:
name: Lint
uses: ./.github/workflows/bazel.yml
with:
name: Lint
run: ./go py:lint
unit-tests:
name: Unit Tests
needs: build
uses: ./.github/workflows/bazel.yml
strategy:
fail-fast: false
matrix:
python-version: ['3.10', '3.14']
os: [ubuntu, macos, windows]
with:
name: Unit Tests (${{ matrix.python-version }}, ${{ matrix.os }})
os: ${{ matrix.os }}
python-version: ${{ matrix.python-version }}
run: bazel test --local_test_jobs 1 //py:unit
remote-tests:
name: Remote Tests
needs: build
uses: ./.github/workflows/bazel.yml
with:
name: Integration Tests Remote
browser: yes
rerun-with-debug: true
run: |
bazel test --local_test_jobs 1 --flaky_test_attempts 3 //py:test-remote
browser-tests:
name: Browser Tests
needs: build
uses: ./.github/workflows/bazel.yml
strategy:
fail-fast: false
matrix:
browser: [chrome, firefox, chrome-bidi, edge]
os: [windows]
include:
- browser: safari
os: macos
with:
name: Integration Tests (${{ matrix.browser }})
browser: ${{ matrix.browser }}
os: ${{ matrix.os }}
rerun-with-debug: true
run: |
bazel test --local_test_jobs 1 --flaky_test_attempts 3 //py:test-${{ matrix.browser }}