mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-30 19:03:16 +03:00
Fix three bugs in SQLTester.mjs which caused --tableresult tests, escaping of SQL values to incorrectly fail, and the --column-names setting to not be reset between tests.
FossilOrigin-Name: 779368dd9b8bb20890b06229c4c3c3b5d153ee88d1af472799515cdc599c870a
This commit is contained in:
@ -352,7 +352,7 @@ class SQLTester {
|
||||
this.closeAllDbs();
|
||||
this.metrics.nTest = 0;
|
||||
this.#nullView = "nil";
|
||||
this.emitColNames = false;
|
||||
this.#emitColNames = false;
|
||||
this.#db.iCurrentDb = 0;
|
||||
//this.#db.initSql.push("SELECT 1;");
|
||||
}
|
||||
@ -605,7 +605,7 @@ class SQLTester {
|
||||
}
|
||||
}
|
||||
}
|
||||
sb.append("\"");
|
||||
sb.push("\"");
|
||||
return sb.join('');
|
||||
}
|
||||
|
||||
@ -694,11 +694,11 @@ class SQLTester {
|
||||
break;
|
||||
}
|
||||
}/* column loop */
|
||||
if( ResultRowMode.NEWLINE === rowMode ){
|
||||
spacing = 0;
|
||||
sb.push('\n');
|
||||
}
|
||||
}/* row loop */
|
||||
if( ResultRowMode.NEWLINE === rowMode ){
|
||||
spacing = 0;
|
||||
sb.push('\n');
|
||||
}
|
||||
}else{ // no output but possibly other side effects
|
||||
while( capi.SQLITE_ROW === (rc = capi.sqlite3_step(pStmt)) ) {}
|
||||
}
|
||||
|
@ -69,11 +69,13 @@ intentional error;
|
||||
SELECT json_array(1,2,3)
|
||||
--json [1,2,3]
|
||||
--testcase tableresult-1
|
||||
select 1, 'a';
|
||||
select 2, 'b';
|
||||
select 1, 'a' UNION
|
||||
select 2, 'b' UNION
|
||||
select 3, 'c' ORDER by 1
|
||||
--tableresult
|
||||
# [a-z]
|
||||
2 b
|
||||
3 c
|
||||
--end
|
||||
--testcase json-block-1
|
||||
select json_array(1,2,3);
|
||||
@ -110,14 +112,15 @@ const runTests = function(){
|
||||
ts.run(sqt);
|
||||
affirm( 'zilch' === sqt.nullValue() );
|
||||
sqt.addTestScript(ts);
|
||||
sqt.runTests();
|
||||
}else if(0){
|
||||
sqt.addTestScript(ts);
|
||||
}else{
|
||||
for(const t of allTests){
|
||||
sqt.addTestScript( new ns.TestScript(t) );
|
||||
}
|
||||
allTests.length = 0;
|
||||
sqt.runTests();
|
||||
}
|
||||
sqt.runTests();
|
||||
}finally{
|
||||
//log( "Metrics:", sqt.metrics );
|
||||
sqt.reset();
|
||||
|
Reference in New Issue
Block a user