Skip to content

Commit a3b7528

Browse files
committed
feat(Github Actions): Automated CLI test (#84)
1 parent 3706197 commit a3b7528

1 file changed

Lines changed: 42 additions & 0 deletions

File tree

.github/workflows/cli_test.yaml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: Test CLI Generated Project
2+
3+
on: [push]
4+
5+
jobs:
6+
test:
7+
runs-on: ubuntu-latest
8+
services:
9+
postgres:
10+
image: postgres:17.4-bookworm
11+
env:
12+
POSTGRES_PASSWORD: postgres
13+
POSTGRES_USER: postgres
14+
POSTGRES_DB: postgres
15+
ports:
16+
- 5432
17+
options: >-
18+
--health-cmd "pg_isready"
19+
--health-interval 10s
20+
--health-timeout 5s
21+
--health-retries 5
22+
steps:
23+
- uses: actions/checkout@v4
24+
- name: Install uv
25+
uses: astral-sh/setup-uv@v5
26+
- name: "Set up Python"
27+
uses: actions/setup-python@v5
28+
with:
29+
python-version-file: "pyproject.toml"
30+
- name: Install the project
31+
run: uv sync --all-extras --dev
32+
- name: Generate example project
33+
run: uv run -m fastapi_forge start --use-example --no-ui --yes
34+
- name: Run tests
35+
working-directory: ./game_zone
36+
env:
37+
GAME_ZONE_PG_HOST: localhost
38+
GAME_ZONE_PG_PORT: ${{ job.services.postgres.ports['5432'] }}
39+
GAME_ZONE_PG_USER: postgres
40+
GAME_ZONE_PG_PASSWORD: postgres
41+
GAME_ZONE_PG_DATABASE: postgres
42+
run: uv run pytest ./tests -v -s

0 commit comments

Comments
 (0)