Skip to content

Commit df28174

Browse files
committed
sqlite: add more verbose test cases
1 parent d8784e0 commit df28174

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

test/parallel/test-sqlite-verbose.js

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,60 @@ suite('DatabaseSync verbose option', () => {
4040
db.close();
4141
});
4242

43+
it('callback receives SQL string for SELECT statements', () => {
44+
let calls = [];
45+
const db = new DatabaseSync(':memory:', {
46+
verbose: (sql) => calls.push(sql),
47+
});
48+
49+
db.exec('CREATE TABLE t (x INTEGER)');
50+
db.exec('INSERT INTO t VALUES (1)');
51+
calls = []; // reset after setup
52+
53+
const stmt = db.prepare('SELECT x FROM t WHERE x = ?');
54+
stmt.get(1);
55+
56+
assert.strictEqual(calls.length, 1);
57+
assert.strictEqual(calls[0], 'SELECT x FROM t WHERE x = 1.0');
58+
db.close();
59+
});
60+
61+
it('callback receives SQL string for UPDATE statements', () => {
62+
let calls = [];
63+
const db = new DatabaseSync(':memory:', {
64+
verbose: (sql) => calls.push(sql),
65+
});
66+
67+
db.exec('CREATE TABLE t (x INTEGER)');
68+
db.exec('INSERT INTO t VALUES (1)');
69+
calls = []; // reset after setup
70+
71+
const stmt = db.prepare('UPDATE t SET x = ? WHERE x = ?');
72+
stmt.run(2, 1);
73+
74+
assert.strictEqual(calls.length, 1);
75+
assert.strictEqual(calls[0], 'UPDATE t SET x = 2.0 WHERE x = 1.0');
76+
db.close();
77+
});
78+
79+
it('callback receives SQL string for DELETE statements', () => {
80+
let calls = [];
81+
const db = new DatabaseSync(':memory:', {
82+
verbose: (sql) => calls.push(sql),
83+
});
84+
85+
db.exec('CREATE TABLE t (x INTEGER)');
86+
db.exec('INSERT INTO t VALUES (1)');
87+
calls = []; // reset after setup
88+
89+
const stmt = db.prepare('DELETE FROM t WHERE x = ?');
90+
stmt.run(1);
91+
92+
assert.strictEqual(calls.length, 1);
93+
assert.strictEqual(calls[0], 'DELETE FROM t WHERE x = 1.0');
94+
db.close();
95+
});
96+
4397
it('falls back to source SQL when expansion fails', () => {
4498
let calls = [];
4599

0 commit comments

Comments
 (0)