Skip to content

Commit 7b1406c

Browse files
author
Tom Softreck
committed
update
1 parent 580bf7d commit 7b1406c

File tree

1 file changed

+55
-13
lines changed

1 file changed

+55
-13
lines changed

.github/workflows/tests.yml

Lines changed: 55 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
fail-fast: false
2121
matrix:
2222
os: [ubuntu-latest]
23-
python-version: ['3.8', '3.9', '3.10', '3.11']
23+
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
2424

2525
steps:
2626
- name: Checkout code
@@ -36,7 +36,7 @@ jobs:
3636
- name: Install Poetry
3737
uses: snok/install-poetry@v1
3838
with:
39-
version: 1.7.1
39+
version: latest
4040
virtualenvs-create: true
4141
virtualenvs-in-project: true
4242
virtualenvs-path: .venv
@@ -53,11 +53,17 @@ jobs:
5353
5454
- name: Install dependencies
5555
run: |
56-
poetry install --with dev,test --no-interaction
56+
poetry install --with dev --no-interaction
5757
5858
- name: Run tests with coverage
5959
run: |
60-
poetry run pytest --cov=dialogchain --cov-report=xml --cov-report=term-missing -v
60+
poetry run pytest \
61+
--cov=src/dialogchain \
62+
--cov-report=xml \
63+
--cov-report=term-missing \
64+
--cov-report=html \
65+
-v \
66+
tests/
6167
6268
- name: Upload coverage to Codecov
6369
uses: codecov/codecov-action@v4
@@ -68,7 +74,7 @@ jobs:
6874

6975
- name: Run type checking
7076
run: |
71-
poetry run mypy src/dialogchain tests
77+
poetry run mypy src/dialogchain
7278
7379
- name: Lint with flake8
7480
run: |
@@ -82,10 +88,15 @@ jobs:
8288
run: |
8389
poetry run isort --check-only src tests
8490
85-
# Optional: Add a separate job for dependency security scanning
86-
security:
87-
name: Security Scan
91+
- name: Test CLI functionality
92+
run: |
93+
poetry run dialogchain --help
94+
95+
integration-tests:
96+
name: Integration Tests
8897
runs-on: ubuntu-latest
98+
needs: test
99+
89100
steps:
90101
- name: Checkout code
91102
uses: actions/checkout@v4
@@ -98,12 +109,43 @@ jobs:
98109
- name: Install Poetry
99110
uses: snok/install-poetry@v1
100111
with:
101-
version: 1.7.1
112+
version: latest
113+
virtualenvs-create: true
114+
virtualenvs-in-project: true
102115

103116
- name: Install dependencies
104-
run: poetry install --no-interaction
117+
run: |
118+
poetry install --no-interaction
105119
106-
- name: Run safety check
120+
- name: Run integration tests
107121
run: |
108-
poetry run pip install safety
109-
poetry run safety check
122+
poetry run pytest tests/integration/ -v
123+
124+
build:
125+
name: Build Package
126+
runs-on: ubuntu-latest
127+
needs: test
128+
129+
steps:
130+
- name: Checkout code
131+
uses: actions/checkout@v4
132+
133+
- name: Set up Python
134+
uses: actions/setup-python@v5
135+
with:
136+
python-version: '3.11'
137+
138+
- name: Install Poetry
139+
uses: snok/install-poetry@v1
140+
with:
141+
version: latest
142+
143+
- name: Build package
144+
run: |
145+
poetry build
146+
147+
- name: Upload build artifacts
148+
uses: actions/upload-artifact@v4
149+
with:
150+
name: dist
151+
path: dist/

0 commit comments

Comments
 (0)