test.ymlā¢1.5 kB
name: Test Voice Mode MCP
on:
push:
branches: [ master, main, test ]
pull_request:
branches: [ master, main ]
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
python-version: ["3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install system dependencies (Ubuntu)
if: runner.os == 'Linux'
run: |
sudo apt-get update
sudo apt-get install -y portaudio19-dev python3-dev
- name: Install system dependencies (macOS)
if: runner.os == 'macOS'
run: |
brew install portaudio
- name: Install uv
run: |
curl -LsSf https://astral.sh/uv/install.sh | sh
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Install package and dependencies
run: |
uv pip install -e ".[test]" --system
- name: Run tests
env:
OPENAI_API_KEY: test-key
run: |
pytest -v -m "not slow" --cov=voice_mode --cov-report=xml
- name: Upload coverage reports
uses: codecov/codecov-action@v3
if: matrix.python-version == '3.11' && matrix.os == 'ubuntu-latest'
with:
file: ./coverage.xml
flags: unittests
name: codecov-umbrella
fail_ci_if_error: false