Skip to content

add testing for example folder #348

add testing for example folder

add testing for example folder #348

name: CLI CPU LlamaCpp Tests
on:
workflow_dispatch:
push:
branches:
- main
pull_request:
branches:
- main
types:
- opened
- reopened
- synchronize
- labeled
- unlabeled
concurrency:
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
jobs:
run_cli_cpu_llama_cpp_tests:
if: ${{
(github.event_name == 'push') ||
(github.event_name == 'workflow_dispatch') ||
contains( github.event.pull_request.labels.*.name, 'cli') ||
contains( github.event.pull_request.labels.*.name, 'examples') ||
contains( github.event.pull_request.labels.*.name, 'cpu') ||
contains( github.event.pull_request.labels.*.name, 'llama_cpp') ||
contains( github.event.pull_request.labels.*.name, 'cli_cpu_llama_cpp')
}}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install requirements
run: |
pip install --upgrade pip
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
pip install -e .[testing,llama-cpp]
# - name: Run cli tests
# run: |
# pytest tests/test_cli.py -s -k "llama_cpp"
- name: Run tests from example folder
run: |
pytest tests/test_examples.py -s -k "cpu and llama_cpp"
continue-on-error: true # Continue even if tests fail or no tests are collected
- name: Check test result
if: steps.run_tests.outcome == 'failure' && steps.run_tests.conclusion == 'failure'
run: |
if [ "${{ steps.run_tests.outputs.exit_code }}" -eq 5 ]; then
echo "No tests were collected. Skipping failure..."
exit 0
else
echo "Tests failed for another reason."
exit 1
fi