Summary
Add integration tests for the SQLite implementation of the Vix DB driver interfaces.
SQLite should become the primary local backend used to validate prepared statements, parameter binding, result reading, transactions, generated identifiers, and connection lifecycle behavior without requiring an external database server.
Current behavior
The SQLite driver implements:
- database opening;
- prepared statements;
- positional parameter binding;
- query execution;
- non-query execution;
- result-set iteration;
- transaction operations;
- last inserted row identifiers;
- BLOB parameters;
- connection validation.
These behaviors are currently not covered by automated integration tests.
Expected behavior
The DB test suite must create temporary SQLite databases and verify the public behavior exposed through both the low-level driver interfaces and the high-level Database facade.
Tests must clean up all temporary files after execution.
Scope
Suggested files
modules/db/tests/sqlite_driver_test.cpp
modules/db/tests/CMakeLists.txt
modules/db/src/sqlite/SQLiteDriver.cpp
Acceptance criteria
Non-goals
This issue does not include:
- SQLite migration SQL generation;
- connection pool concurrency testing;
- ORM model testing;
- SQLite performance benchmarks.
Suggested labels
scope:db
type:ci
tests
help wanted
status:ready
Summary
Add integration tests for the SQLite implementation of the Vix DB driver interfaces.
SQLite should become the primary local backend used to validate prepared statements, parameter binding, result reading, transactions, generated identifiers, and connection lifecycle behavior without requiring an external database server.
Current behavior
The SQLite driver implements:
These behaviors are currently not covered by automated integration tests.
Expected behavior
The DB test suite must create temporary SQLite databases and verify the public behavior exposed through both the low-level driver interfaces and the high-level
Databasefacade.Tests must clean up all temporary files after execution.
Scope
lastInsertId().ping().Database::sqlite()facade.Suggested files
modules/db/tests/sqlite_driver_test.cppmodules/db/tests/CMakeLists.txtmodules/db/src/sqlite/SQLiteDriver.cppAcceptance criteria
vix::db::DBError.Non-goals
This issue does not include:
Suggested labels
scope:dbtype:citestshelp wantedstatus:ready