diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 6097fcb..df6cb59 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -11,30 +11,42 @@ on: jobs: build: - runs-on: ubuntu-latest strategy: fail-fast: false matrix: - python-version: ["3.10", "3.11"] + python-version: ["3.10"] steps: - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v3 with: python-version: ${{ matrix.python-version }} + - name: Install dependencies run: | python -m pip install --upgrade pip - python -m pip install flake8 pytest + python -m pip install flake8 pytest httpx hypercorn if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + - name: Lint with flake8 run: | - # stop the build if there are Python syntax errors or undefined names flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - - name: Test with pytest + + - name: Start Hypercorn for tests run: | - pytest + nohup hypercorn -b 127.0.0.1:5000 app:app & + sleep 5 + + - name: Test application with pytest + run: | + pytest tests/ + + - name: Stop Hypercorn + if: always() + run: | + pkill -f hypercorn +