From fa44bbf078066ba28063f1b8b32b6328ef208d37 Mon Sep 17 00:00:00 2001 From: Brendan <2bndy5@gmail.com> Date: Sun, 4 Aug 2024 05:16:01 -0700 Subject: [PATCH] add test CI workflow --- .github/workflows/test.yml | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..ad5cb0b --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,38 @@ +name: test/lint + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + run: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v4 + id: setup-python + with: + python-version: '3.x' + - name: Install dependencies + run: pip install -r tests/requirements.txt -e . -r requirements-dev.txt + - name: Cache pre-commit venv(s) + uses: actions/cache@v4 + with: + path: '~/.cache/pre-commit' + key: pre-commit_${{ steps.setup-python.outputs.python-version }}_${{ hashfiles('.pre-commit-config.yaml') }} + - name: Run pre-commit hooks + run: pre-commit run --all-files + - name: Run tests and collect coverage + run: coverage run -m pytest + - name: Create coverage report + run: coverage xml + - name: Upload coverage to Codecov + uses: codecov/codecov-action@v4 + with: + verbose: true + env: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} \ No newline at end of file