name: Test on: pull_request: push: branches: - main jobs: release: runs-on: ubuntu-latest strategy: matrix: python-version: ["3.10", "3.11"] steps: - uses: actions/checkout@v2 - name: Set up Python uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: Cache Poetry virtualenv uses: actions/cache@v2 with: path: ~/.cache/pypoetry/virtualenvs key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }} restore-keys: | ${{ runner.os }}-poetry- - name: Install Poetry uses: snok/install-poetry@v1.3.1 - name: Install dependencies run: poetry install --with dev,anthropic - name: Run tests run: poetry run pytest tests/ -k "not openai and not anthropic and not evals" env: OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} - name: Generate coverage report if: matrix.python-version == '3.11' run: | poetry run coverage run -m pytest tests/ poetry run coverage report poetry run coverage html env: OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} - name: Coveralls GitHub Action if: matrix.python-version == '3.11' uses: coverallsapp/github-action@v2.2.3 with: github-token: ${{ secrets.GITHUB_TOKEN }}