Skip to content

Commit 3bfa36f

Browse files
test: switch ddb audit tests to use sep temp db and audit manager due to connection shutting before completion of these tests (#79)
* test: switch ddb audit tests to use sep temp db and audit manager due to connection shutting before completion of these tests
1 parent b38d430 commit 3bfa36f

File tree

1 file changed

+16
-14
lines changed
  • tests/test_core_engine/test_backends/test_implementations/test_duckdb

1 file changed

+16
-14
lines changed

tests/test_core_engine/test_backends/test_implementations/test_duckdb/test_audit_ddb.py

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,30 +7,32 @@
77
from uuid import uuid4
88

99
import pytest
10-
from duckdb import ColumnExpression, ConstantExpression, DuckDBPyConnection
10+
from duckdb import ColumnExpression, ConstantExpression, DuckDBPyConnection, connect
1111

1212
from dve.core_engine.backends.implementations.duckdb.auditing import DDBAuditingManager
1313
from dve.core_engine.models import ProcessingStatusRecord, SubmissionInfo, SubmissionStatisticsRecord
1414
from dve.pipeline.utils import SubmissionStatus
1515

16-
from .....fixtures import temp_ddb_conn # pylint: disable=unused-import
17-
1816

1917
@pytest.fixture(scope="function")
20-
def ddb_audit_manager(temp_ddb_conn) -> Iterator[DDBAuditingManager]:
21-
db_file: Path
22-
conn: DuckDBPyConnection
23-
db_file, conn = temp_ddb_conn
24-
yield DDBAuditingManager(database_uri=db_file.as_uri(), connection=conn)
18+
def ddb_audit_manager() -> Iterator[DDBAuditingManager]:
19+
db = f"dve_{uuid4().hex}"
20+
with tempfile.TemporaryDirectory(prefix="ddb_audit_testing") as tmp:
21+
db_file = Path(tmp, db + ".duckdb")
22+
conn = connect(database=db_file, read_only=False)
23+
24+
yield DDBAuditingManager(database_uri=db_file.as_uri(), connection=conn)
2525

2626

2727
@pytest.fixture(scope="function")
28-
def ddb_audit_manager_threaded(temp_ddb_conn) -> Iterator[DDBAuditingManager]:
29-
db_file: Path
30-
conn: DuckDBPyConnection
31-
db_file, conn = temp_ddb_conn
32-
with ThreadPoolExecutor(1) as pool:
33-
yield DDBAuditingManager(database_uri=db_file.as_uri(), pool=pool, connection=conn)
28+
def ddb_audit_manager_threaded() -> Iterator[DDBAuditingManager]:
29+
db = f"dve_{uuid4().hex}"
30+
with tempfile.TemporaryDirectory(prefix="ddb_audit_testing") as tmp:
31+
db_file = Path(tmp, db + ".duckdb")
32+
conn = connect(database=db_file, read_only=False)
33+
34+
with ThreadPoolExecutor(1) as pool:
35+
yield DDBAuditingManager(database_uri=db_file.as_uri(), pool=pool, connection=conn)
3436

3537

3638
@pytest.fixture

0 commit comments

Comments
 (0)