mirror of
https://github.com/creyD/creyPY.git
synced 2026-04-12 19:30:30 +02:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| dcb9afb8f2 | |||
|
|
8c98e001f9 | ||
| 959a746e4f |
@@ -1,4 +1,5 @@
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import Column, DateTime, String
|
||||
from sqlalchemy.dialects.postgresql import UUID
|
||||
@@ -13,11 +14,7 @@ class Base:
|
||||
# Primary key as uuid
|
||||
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4)
|
||||
created_at = Column(DateTime(timezone=True), server_default=func.now())
|
||||
updated_at = Column(
|
||||
DateTime(timezone=True),
|
||||
server_default=func.now(),
|
||||
onupdate=func.now(),
|
||||
)
|
||||
updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
|
||||
created_by_id = Column(String)
|
||||
|
||||
__name__: str
|
||||
|
||||
@@ -3,7 +3,7 @@ import unittest
|
||||
from typing import Type
|
||||
|
||||
from httpx import ASGITransport, AsyncClient, Response
|
||||
from sqlalchemy import create_engine
|
||||
from sqlalchemy import create_engine, text
|
||||
from sqlalchemy.ext.asyncio import create_async_engine
|
||||
from sqlalchemy_utils import create_database, database_exists, drop_database
|
||||
|
||||
@@ -23,7 +23,9 @@ class AbstractTestAPI(unittest.IsolatedAsyncioTestCase):
|
||||
print("setting up abstract")
|
||||
|
||||
@classmethod
|
||||
def setup_database(cls, sync_db_url: str, async_db_url: str, base: Type[Base]):
|
||||
def setup_database(
|
||||
cls, sync_db_url: str, async_db_url: str, base: Type[Base], btree_gist: bool = False
|
||||
):
|
||||
cls.engine_s = create_engine(
|
||||
sync_db_url,
|
||||
echo=False,
|
||||
@@ -34,6 +36,10 @@ class AbstractTestAPI(unittest.IsolatedAsyncioTestCase):
|
||||
drop_database(cls.engine_s.url)
|
||||
create_database(cls.engine_s.url)
|
||||
|
||||
if btree_gist:
|
||||
with cls.engine_s.begin() as conn:
|
||||
conn.execute(text("CREATE EXTENSION IF NOT EXISTS btree_gist"))
|
||||
|
||||
# Migrate
|
||||
base.metadata.create_all(cls.engine_s)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user