Skip to content

Commit 0df0f5e

Browse files
committed
add test
1 parent ed9cf77 commit 0df0f5e

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

tests/unit_node/sqlite_test.ts

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -438,3 +438,26 @@ Deno.test("[node/sqlite] Database backup", async () => {
438438
Deno.removeSync(`${tempDir}/original.db`);
439439
Deno.removeSync(`${tempDir}/backup.db`);
440440
});
441+
442+
Deno.test("[node/sqlite] calling StatementSync methods after connection has closed", () => {
443+
const errMessage = "statement has been finalized";
444+
445+
const db = new DatabaseSync(":memory:");
446+
db.exec("CREATE TABLE test (value INTEGER)");
447+
const stmt = db.prepare("INSERT INTO test (value) VALUES (?), (?)");
448+
stmt.run(1, 2);
449+
db.close();
450+
451+
assertThrows(() => stmt.all(), Error, errMessage);
452+
assertThrows(() => stmt.expandedSQL, Error, errMessage);
453+
assertThrows(() => stmt.get(), Error, errMessage);
454+
assertThrows(() => stmt.iterate(), Error, errMessage);
455+
assertThrows(() => stmt.setAllowBareNamedParameters(true), Error, errMessage);
456+
assertThrows(
457+
() => stmt.setAllowUnknownNamedParameters(true),
458+
Error,
459+
errMessage,
460+
);
461+
assertThrows(() => stmt.setReadBigInts(true), Error, errMessage);
462+
assertThrows(() => stmt.sourceSQL, Error, errMessage);
463+
});

0 commit comments

Comments
 (0)