diff --git a/.github/workflows/run-test.yml b/.github/workflows/run-test.yml new file mode 100644 index 00000000..4dfb5455 --- /dev/null +++ b/.github/workflows/run-test.yml @@ -0,0 +1,51 @@ +name: Run Test + +on: + push: + pull_request: + workflow_dispatch: + +jobs: + tests: + name: Test + runs-on: ubuntu-latest + services: + postgres: + image: postgres:latest + env: + POSTGRES_DB: postgres + POSTGRES_PASSWORD: password + POSTGRES_USER: user + ports: + - 5432:5432 + # Set health checks to wait until postgres has started + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + + steps: + - name: Checkout git repository + uses: actions/checkout@v4 + + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: '3.12' + + - name: Install Poetry + uses: snok/install-poetry@v1 + with: + virtualenvs-create: true + virtualenvs-in-project: true + + - name: Install dependencies + run: poetry install --no-interaction --no-root + + - name: Copy settings.toml for configuration test database + run: cp docs/settings.example.toml settings.toml + + - name: Run tests + run: poetry run pytest +