Compare commits
No commits in common. "6049048bbf41e001e5d11ec8c2acb4064595bc15" and "e7102c4de655756102d7b76d84de9aebc973a9dc" have entirely different histories.
6049048bbf
...
e7102c4de6
@ -18,8 +18,6 @@ build:
|
||||
test:
|
||||
image: python:3.10-slim-bullseye
|
||||
stage: test
|
||||
variables:
|
||||
DATABASE: sqlite:///../app/db.sqlite
|
||||
before_script:
|
||||
- pip install -r requirements.txt
|
||||
- pip install pytest httpx
|
||||
|
44
app/orm.py
44
app/orm.py
@ -11,6 +11,27 @@ Base = declarative_base()
|
||||
class Origin(Base):
|
||||
__tablename__ = "origin"
|
||||
|
||||
"""
|
||||
CREATE TABLE origin (
|
||||
id INTEGER NOT NULL,
|
||||
origin_ref TEXT,
|
||||
hostname TEXT,
|
||||
guest_driver_version TEXT,
|
||||
os_platform TEXT,
|
||||
os_version TEXT,
|
||||
PRIMARY KEY (id)
|
||||
);
|
||||
CREATE INDEX ix_origin_0548dd22f20de1bb ON origin (origin_ref);
|
||||
"""
|
||||
|
||||
"""
|
||||
1|B210CF72-FEC7-4440-9499-1156D1ACD13A|ubuntu-grid-server|525.60.13|Ubuntu 20.04|20.04.5 LTS (Focal Fossa)
|
||||
2|230b0000-a356-4000-8a2b-0000564c0000|PC-WORKSTATION|527.41|Windows 10 Pro|10.0.19045
|
||||
3|908B202D-CC43-420F-A2EF-FC092AAE8D38|docker-cuda-1|525.60.13|Debian GNU/Linux 10 (buster) 10|10 (buster)
|
||||
4|41720000-FA43-4000-9472-0000E8660000|PC-Windows|527.41|Windows 10 Pro|10.0.19045
|
||||
5|723EA079-7B0C-4E25-A8D4-DD3E89F9D177|docker-cuda-2|525.60.13|Debian GNU/Linux 10 (buster) 10|10 (buster)
|
||||
"""
|
||||
|
||||
origin_ref = Column(CHAR(length=36), primary_key=True, unique=True, index=True) # uuid4
|
||||
|
||||
hostname = Column(VARCHAR(length=256), nullable=True)
|
||||
@ -48,9 +69,28 @@ class Origin(Base):
|
||||
class Lease(Base):
|
||||
__tablename__ = "lease"
|
||||
|
||||
origin_ref = Column(CHAR(length=36), ForeignKey(Origin.origin_ref), primary_key=True, nullable=False, index=True) # uuid4
|
||||
lease_ref = Column(CHAR(length=36), primary_key=True, nullable=False, index=True) # uuid4
|
||||
"""
|
||||
CREATE TABLE lease (
|
||||
id INTEGER NOT NULL,
|
||||
origin_ref TEXT,
|
||||
lease_ref TEXT,
|
||||
lease_created DATETIME,
|
||||
lease_expires DATETIME, lease_last_update DATETIME,
|
||||
PRIMARY KEY (id)
|
||||
);
|
||||
CREATE INDEX ix_lease_11c7d13bfb17f70d ON lease (origin_ref, lease_ref);
|
||||
"""
|
||||
|
||||
"""
|
||||
1|B210CF72-FEC7-4440-9499-1156D1ACD13A|9c4536f9-a216-44c7-a1d3-388a15ee80be|2022-12-20 17:29:07.906668|2022-12-22 04:45:58.138211|2022-12-21 04:45:58.138211
|
||||
2|230b0000-a356-4000-8a2b-0000564c0000|1d95e160-058d-4052-b49f-b85306b4c345|2022-12-20 17:30:25.388389|2022-12-23 06:07:29.913027|2022-12-22 06:07:29.913027
|
||||
3|908B202D-CC43-420F-A2EF-FC092AAE8D38|9e1bca05-e247-4847-9de6-8b9a210b353e|2022-12-20 17:31:40.158003|2022-12-23 09:28:57.379008|2022-12-22 09:28:57.379008
|
||||
4|41720000-FA43-4000-9472-0000E8660000|f2ece7fa-d0c6-4af4-901c-6d3b2c3ecf88|2022-12-20 21:03:33.403711|2022-12-23 08:44:39.998754|2022-12-22 08:44:39.998754
|
||||
5|723EA079-7B0C-4E25-A8D4-DD3E89F9D177|5455f59b-dd70-45c1-82fa-3fd5fae6c037|2022-12-21 06:05:35.085572|2022-12-23 04:53:41.385178|2022-12-22 04:53:41.385178
|
||||
"""
|
||||
|
||||
origin_ref = Column(CHAR(length=36), ForeignKey(Origin.origin_ref), primary_key=True, nullable=False, index=True)
|
||||
lease_ref = Column(CHAR(length=36), primary_key=True, nullable=False, index=True)
|
||||
lease_created = Column(DATETIME(), nullable=False)
|
||||
lease_expires = Column(DATETIME(), nullable=False)
|
||||
lease_updated = Column(DATETIME(), nullable=False)
|
||||
|
10
test/main.py
10
test/main.py
@ -1,11 +1,13 @@
|
||||
from starlette.testclient import TestClient
|
||||
import importlib.util
|
||||
import sys
|
||||
|
||||
# add relative path to use packages as they were in the app/ dir
|
||||
sys.path.append('../')
|
||||
sys.path.append('../app')
|
||||
MODULE, PATH = 'main.app', '../app/main.py'
|
||||
|
||||
from app import main
|
||||
spec = importlib.util.spec_from_file_location(MODULE, PATH)
|
||||
main = importlib.util.module_from_spec(spec)
|
||||
sys.modules[MODULE] = main
|
||||
spec.loader.exec_module(main)
|
||||
|
||||
client = TestClient(main.app)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user