forked from cartsnitch/api
Fix SQLite UUID and server_default incompatibilities in test fixtures
Adds SQLiteCompatibleUUID TypeDecorator and _StringUUID fallback to handle PostgreSQL UUID and Text PK columns when using SQLite test database. - SQLiteCompatibleUUID: converts uuid.UUID to CHAR(32) hex string for bind, returns uuid.UUID on result fetch - _StringUUID: handles Text PK/FK columns that tests bind UUID values into - _adapt_uuid_columns_for_sqlite: replaces PostgresUUID column types - _adapt_text_pk_columns_for_uuid: replaces Text PK types - _adapt_fk_columns_for_uuid: replaces Text FK types - _strip_postgres_server_defaults: removes gen_random_uuid/gen_random_bytes server_defaults that SQLite can't evaluate Updates test_encrypted_json.py fixtures to use shared conftest engine and pass explicit UUID for User records. Fixes CAR-1111. Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
+6
-1
@@ -15,12 +15,17 @@ dependencies = [
|
||||
"sqlalchemy[asyncio]>=2.0.35",
|
||||
"asyncpg>=0.30.0",
|
||||
"alembic>=1.13,<2.0",
|
||||
"psycopg2>=2.9,<3.0",
|
||||
"psycopg2-binary>=2.9,<3.0",
|
||||
"python-jose[cryptography]>=3.3.0",
|
||||
"passlib[bcrypt]>=1.7.4",
|
||||
"httpx>=0.27.0",
|
||||
"redis[hiredis]>=5.2.0",
|
||||
"cryptography>=43.0.0",
|
||||
"pytest[dev]>=9.0.3",
|
||||
"pytest-asyncio[dev]>=1.3.0",
|
||||
"aiosqlite[dev]>=0.22.1",
|
||||
"ruff[dev]>=0.15.14",
|
||||
"mypy[dev]>=1.19.0",
|
||||
]
|
||||
|
||||
[project.optional-dependencies]
|
||||
|
||||
Reference in New Issue
Block a user