Skip to content

Commit 8346cd2

Browse files
committed
Update tests
1 parent f775d50 commit 8346cd2

File tree

1 file changed

+65
-75
lines changed

1 file changed

+65
-75
lines changed

.github/workflows/ci.yml

Lines changed: 65 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,15 @@ jobs:
4848
with:
4949
python-version: ${{ matrix.python-version }}
5050

51+
- name: Install uv
52+
uses: astral-sh/setup-uv@v5
53+
5154
- name: Install dependencies
52-
run: |
53-
python -m pip install --upgrade pip
54-
pip install -e ".[test]"
55+
run: uv sync --group test
5556

5657
- name: Run unit tests
5758
run: |
58-
pytest tests/ -v --timeout=60 \
59+
uv run pytest tests/ -v --timeout=60 \
5960
--ignore=tests/test_sqlite.py \
6061
--ignore=tests/test_mssql.py \
6162
--ignore=tests/test_postgresql.py \
@@ -83,14 +84,14 @@ jobs:
8384
with:
8485
python-version: ${{ matrix.python-version }}
8586

87+
- name: Install uv
88+
uses: astral-sh/setup-uv@v5
89+
8690
- name: Install dependencies
87-
run: |
88-
python -m pip install --upgrade pip
89-
pip install -e ".[test]"
91+
run: uv sync --group test
9092

9193
- name: Run SQLite integration tests
92-
run: |
93-
pytest tests/test_sqlite.py -v --timeout=60
94+
run: uv run pytest tests/test_sqlite.py -v --timeout=60
9495

9596
test-mssql:
9697
runs-on: ubuntu-latest
@@ -120,11 +121,11 @@ jobs:
120121
with:
121122
python-version: "3.12"
122123

124+
- name: Install uv
125+
uses: astral-sh/setup-uv@v5
126+
123127
- name: Install dependencies
124-
run: |
125-
python -m pip install --upgrade pip
126-
pip install -e ".[test]"
127-
pip install mssql-python
128+
run: uv sync --group test --extra mssql
128129

129130
- name: Wait for SQL Server to be ready
130131
run: |
@@ -143,8 +144,7 @@ jobs:
143144
MSSQL_PORT: 1433
144145
MSSQL_USER: sa
145146
MSSQL_PASSWORD: TestPassword123!
146-
run: |
147-
pytest tests/test_mssql.py -v --timeout=120
147+
run: uv run pytest tests/test_mssql.py -v --timeout=120
148148

149149
test-postgresql:
150150
runs-on: ubuntu-latest
@@ -174,11 +174,11 @@ jobs:
174174
with:
175175
python-version: "3.12"
176176

177+
- name: Install uv
178+
uses: astral-sh/setup-uv@v5
179+
177180
- name: Install dependencies
178-
run: |
179-
python -m pip install --upgrade pip
180-
pip install -e ".[test]"
181-
pip install psycopg2-binary
181+
run: uv sync --group test --extra postgres
182182

183183
- name: Run PostgreSQL integration tests
184184
env:
@@ -187,8 +187,7 @@ jobs:
187187
POSTGRES_USER: testuser
188188
POSTGRES_PASSWORD: TestPassword123!
189189
POSTGRES_DATABASE: test_sqlit
190-
run: |
191-
pytest tests/test_postgresql.py -v --timeout=120
190+
run: uv run pytest tests/test_postgresql.py -v --timeout=120
192191

193192
test-mysql:
194193
runs-on: ubuntu-latest
@@ -219,11 +218,11 @@ jobs:
219218
with:
220219
python-version: "3.12"
221220

221+
- name: Install uv
222+
uses: astral-sh/setup-uv@v5
223+
222224
- name: Install dependencies
223-
run: |
224-
python -m pip install --upgrade pip
225-
pip install -e ".[test]"
226-
pip install mysql-connector-python
225+
run: uv sync --group test --extra mysql
227226

228227
- name: Run MySQL integration tests
229228
env:
@@ -232,8 +231,7 @@ jobs:
232231
MYSQL_USER: root
233232
MYSQL_PASSWORD: TestPassword123!
234233
MYSQL_DATABASE: test_sqlit
235-
run: |
236-
pytest tests/test_mysql.py -v --timeout=120
234+
run: uv run pytest tests/test_mysql.py -v --timeout=120
237235

238236
test-oracle:
239237
runs-on: ubuntu-latest
@@ -263,11 +261,11 @@ jobs:
263261
with:
264262
python-version: "3.12"
265263

264+
- name: Install uv
265+
uses: astral-sh/setup-uv@v5
266+
266267
- name: Install dependencies
267-
run: |
268-
python -m pip install --upgrade pip
269-
pip install -e ".[test]"
270-
pip install oracledb
268+
run: uv sync --group test --extra oracle
271269

272270
- name: Run Oracle integration tests
273271
env:
@@ -276,8 +274,7 @@ jobs:
276274
ORACLE_USER: testuser
277275
ORACLE_PASSWORD: TestPassword123!
278276
ORACLE_SERVICE: FREEPDB1
279-
run: |
280-
pytest tests/test_oracle.py -v --timeout=120
277+
run: uv run pytest tests/test_oracle.py -v --timeout=120
281278

282279
test-mariadb:
283280
runs-on: ubuntu-latest
@@ -313,11 +310,11 @@ jobs:
313310
sudo apt-get update
314311
sudo apt-get install -y libmariadb-dev
315312
313+
- name: Install uv
314+
uses: astral-sh/setup-uv@v5
315+
316316
- name: Install dependencies
317-
run: |
318-
python -m pip install --upgrade pip
319-
pip install -e ".[test]"
320-
pip install mariadb
317+
run: uv sync --group test --extra mariadb
321318

322319
- name: Run MariaDB integration tests
323320
env:
@@ -326,8 +323,7 @@ jobs:
326323
MARIADB_USER: root
327324
MARIADB_PASSWORD: TestPassword123!
328325
MARIADB_DATABASE: test_sqlit
329-
run: |
330-
pytest tests/test_mariadb.py -v --timeout=120
326+
run: uv run pytest tests/test_mariadb.py -v --timeout=120
331327

332328
test-duckdb:
333329
runs-on: ubuntu-latest
@@ -343,15 +339,14 @@ jobs:
343339
with:
344340
python-version: ${{ matrix.python-version }}
345341

342+
- name: Install uv
343+
uses: astral-sh/setup-uv@v5
344+
346345
- name: Install dependencies
347-
run: |
348-
python -m pip install --upgrade pip
349-
pip install -e ".[test]"
350-
pip install duckdb
346+
run: uv sync --group test --extra duckdb
351347

352348
- name: Run DuckDB integration tests
353-
run: |
354-
pytest tests/test_duckdb.py -v --timeout=60
349+
run: uv run pytest tests/test_duckdb.py -v --timeout=60
355350

356351
test-cockroachdb:
357352
runs-on: ubuntu-latest
@@ -365,11 +360,11 @@ jobs:
365360
with:
366361
python-version: "3.12"
367362

363+
- name: Install uv
364+
uses: astral-sh/setup-uv@v5
365+
368366
- name: Install dependencies
369-
run: |
370-
python -m pip install --upgrade pip
371-
pip install -e ".[test]"
372-
pip install psycopg2-binary
367+
run: uv sync --group test --extra cockroachdb
373368

374369
- name: Start CockroachDB
375370
run: |
@@ -392,8 +387,7 @@ jobs:
392387
COCKROACHDB_USER: root
393388
COCKROACHDB_PASSWORD: ""
394389
COCKROACHDB_DATABASE: test_sqlit
395-
run: |
396-
pytest tests/test_cockroachdb.py -v --timeout=120
390+
run: uv run pytest tests/test_cockroachdb.py -v --timeout=120
397391

398392
test-firebird:
399393
runs-on: ubuntu-latest
@@ -417,11 +411,11 @@ jobs:
417411
with:
418412
python-version: "3.12"
419413

414+
- name: Install uv
415+
uses: astral-sh/setup-uv@v5
416+
420417
- name: Install dependencies
421-
run: |
422-
python -m pip install --upgrade pip
423-
pip install -e ".[test]"
424-
pip install firebirdsql
418+
run: uv sync --group test --extra firebird
425419

426420
- name: Run Firebird integration tests
427421
env:
@@ -430,8 +424,7 @@ jobs:
430424
FIREBIRD_USER: testuser
431425
FIREBIRD_PASSWORD: TestPassword123!
432426
FIREBIRD_DATABASE: /var/lib/firebird/data/test_sqlit.fdb
433-
run: |
434-
pytest tests/test_firebird.py -v --timeout=120
427+
run: uv run pytest tests/test_firebird.py -v --timeout=120
435428

436429
test-clickhouse:
437430
runs-on: ubuntu-latest
@@ -445,11 +438,11 @@ jobs:
445438
with:
446439
python-version: "3.12"
447440

441+
- name: Install uv
442+
uses: astral-sh/setup-uv@v5
443+
448444
- name: Install dependencies
449-
run: |
450-
python -m pip install --upgrade pip
451-
pip install -e ".[test]"
452-
pip install clickhouse-connect
445+
run: uv sync --group test --extra clickhouse
453446

454447
- name: Start ClickHouse
455448
run: |
@@ -474,8 +467,7 @@ jobs:
474467
CLICKHOUSE_USER: default
475468
CLICKHOUSE_PASSWORD: testpass
476469
CLICKHOUSE_DATABASE: test_sqlit
477-
run: |
478-
pytest tests/test_clickhouse.py -v --timeout=120
470+
run: uv run pytest tests/test_clickhouse.py -v --timeout=120
479471

480472
test-ssh:
481473
runs-on: ubuntu-latest
@@ -489,11 +481,11 @@ jobs:
489481
with:
490482
python-version: "3.12"
491483

484+
- name: Install uv
485+
uses: astral-sh/setup-uv@v5
486+
492487
- name: Install dependencies
493-
run: |
494-
python -m pip install --upgrade pip
495-
pip install -e ".[test,ssh]"
496-
pip install psycopg2-binary
488+
run: uv sync --group test --extra ssh --extra postgres
497489

498490
- name: Create Docker network
499491
run: docker network create ssh-test-net
@@ -550,8 +542,7 @@ jobs:
550542
POSTGRES_USER: testuser
551543
POSTGRES_PASSWORD: TestPassword123!
552544
POSTGRES_DATABASE: test_sqlit
553-
run: |
554-
pytest tests/test_ssh.py -v --timeout=120
545+
run: uv run pytest tests/test_ssh.py -v --timeout=120
555546

556547
- name: Cleanup
557548
if: always()
@@ -572,11 +563,11 @@ jobs:
572563
with:
573564
python-version: "3.12"
574565

566+
- name: Install uv
567+
uses: astral-sh/setup-uv@v5
568+
575569
- name: Install dependencies
576-
run: |
577-
python -m pip install --upgrade pip
578-
pip install -e ".[test]"
579-
pip install libsql
570+
run: uv sync --group test --extra turso
580571

581572
- name: Start Turso (libsql-server)
582573
run: |
@@ -596,8 +587,7 @@ jobs:
596587
- name: Run Turso integration tests
597588
env:
598589
TURSO_URL: http://localhost:8080
599-
run: |
600-
pytest tests/test_turso.py -v --timeout=120
590+
run: uv run pytest tests/test_turso.py -v --timeout=120
601591

602592
- name: Cleanup
603593
if: always()

0 commit comments

Comments
 (0)