1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-08 14:02:16 +03:00

Add a basic INSERT RETURNING test for the oo1.DB.exec() API.

FossilOrigin-Name: d29d62cf7658aeb49f3c8a5d0b0809d945ebc9b79379a255eb88f771d2a2c430
This commit is contained in:
stephan
2023-05-19 16:12:06 +00:00
parent 2492b6c0fb
commit 416aeb16ee
4 changed files with 21 additions and 13 deletions

View File

@@ -1335,8 +1335,8 @@ self.sqlite3InitModule = sqlite3InitModule;
sql:['CREATE TABLE t(a,b);',
// ^^^ using TEMP TABLE breaks the db export test
"INSERT INTO t(a,b) VALUES(1,2),(3,4),",
"(?,?),('blob',X'6869')"/*intentionally missing semicolon to test for
off-by-one bug in string-to-WASM conversion*/],
"(?,?)"/*intentionally missing semicolon to test for
off-by-one bug in string-to-WASM conversion*/],
saveSql: list,
bind: [5,6]
});
@@ -1344,12 +1344,20 @@ self.sqlite3InitModule = sqlite3InitModule;
T.assert(rc === db)
.assert(2 === list.length)
.assert('string'===typeof list[1])
.assert(4===db.changes())
.assert(3===db.changes())
.assert(this.progressHandlerCount > 0,
"Expecting progress callback.")
if(wasm.bigIntEnabled){
T.assert(4n===db.changes(false,true));
T.assert(3n===db.changes(false,true));
}
rc = db.exec({
sql: "INSERT INTO t values('blob',X'6869') RETURNING 13",
rowMode: 0
});
T.assert(Array.isArray(rc))
.assert(1===rc.length)
.assert(13 === rc[0])
.assert(1===db.changes());
let vals = db.selectValues('select a from t order by a limit 2');
T.assert( 2 === vals.length )