fix: add runtime schema guard for skipped count
This commit is contained in:
27
tests/test_db_schema.py
Normal file
27
tests/test_db_schema.py
Normal file
@@ -0,0 +1,27 @@
|
||||
from sqlalchemy import create_engine, inspect, text
|
||||
|
||||
from app.db import _ensure_runtime_schema
|
||||
|
||||
|
||||
def test_runtime_schema_adds_skipped_count_to_existing_crawl_runs_table(monkeypatch):
|
||||
engine = create_engine("sqlite:///:memory:")
|
||||
with engine.begin() as connection:
|
||||
connection.execute(
|
||||
text(
|
||||
"""
|
||||
CREATE TABLE crawl_runs (
|
||||
id INTEGER PRIMARY KEY,
|
||||
source_url TEXT NOT NULL,
|
||||
status VARCHAR(32) NOT NULL DEFAULT 'running',
|
||||
found_count INTEGER NOT NULL DEFAULT 0,
|
||||
parsed_count INTEGER NOT NULL DEFAULT 0
|
||||
)
|
||||
"""
|
||||
)
|
||||
)
|
||||
monkeypatch.setattr("app.db.engine", engine)
|
||||
|
||||
_ensure_runtime_schema()
|
||||
|
||||
columns = {column["name"] for column in inspect(engine).get_columns("crawl_runs")}
|
||||
assert "skipped_count" in columns
|
||||
Reference in New Issue
Block a user