Skip to content

Merge pull request #779 from ftnext/feature/pytest #149

Merge pull request #779 from ftnext/feature/pytest

Merge pull request #779 from ftnext/feature/pytest #149

Workflow file for this run

name: Unit tests
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
build:
strategy:
fail-fast: true
matrix:
include:
- os: ubuntu-latest
python-version: "3.9"
- os: ubuntu-latest
python-version: "3.10"
- os: ubuntu-latest
python-version: "3.11"
- os: ubuntu-latest
python-version: "3.12"
- os: windows-latest
python-version: "3.11"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install build dependencies
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install --no-install-recommends -y libpulse-dev libasound2-dev
sudo apt-get install --no-install-recommends -y portaudio19-dev
- name: Install ffmpeg (for Whisper)
uses: FedericoCarboni/setup-ffmpeg@v3
- name: Install Python dependencies (Ubuntu only)
if: matrix.os == 'ubuntu-latest'
run: |
python -m pip install 'pocketsphinx<5'
- name: Install Python dependencies (Ubuntu)
if: matrix.os == 'ubuntu-latest'
run: |
python -m pip install .[dev,audio,whisper-local,whisper-api]
- name: Install Python dependencies (Windows)
if: matrix.os == 'windows-latest'
run: |
python -m pip install .[dev,whisper-local,whisper-api]
- name: Test with unittest
run: |
pytest --doctest-modules -v speech_recognition/recognizers/ tests/