Appearance and legibility improvements for tester1.js.
FossilOrigin-Name: 4fd3ed1b6405f690825c9993e56b199d4a7fb497cf9131815c803150b8b96528
This commit is contained in:
parent
780bc4c557
commit
cd302a5e32
@ -40,8 +40,40 @@ span.labeled-input {
|
|||||||
.tests-pass { background-color: green; color: white }
|
.tests-pass { background-color: green; color: white }
|
||||||
.tests-fail { background-color: red; color: yellow }
|
.tests-fail { background-color: red; color: yellow }
|
||||||
.faded { opacity: 0.5; }
|
.faded { opacity: 0.5; }
|
||||||
.group-start { color: blue; }
|
.group-start {
|
||||||
.group-end { color: blue; }
|
color: blue;
|
||||||
|
background-color: skyblue;
|
||||||
|
font-weight: bold;
|
||||||
|
border-top: 1px dotted blue;
|
||||||
|
padding: 0.5em;
|
||||||
|
margin-top: 0.5em;
|
||||||
|
}
|
||||||
|
.group-end {
|
||||||
|
padding: 0.5em;
|
||||||
|
margin-bottom: 0.25em;
|
||||||
|
/*border-bottom: 1px dotted blue;*/
|
||||||
|
}
|
||||||
|
.group-end.green {
|
||||||
|
background: lightgreen;
|
||||||
|
border-bottom: 1px dotted green;
|
||||||
|
}
|
||||||
|
.one-test-line, .skipping-group {
|
||||||
|
margin-left: 3em;
|
||||||
|
}
|
||||||
|
.skipping-test, .skipping-group {
|
||||||
|
background-color: #ffff73;
|
||||||
|
}
|
||||||
|
.skipping-test {
|
||||||
|
margin-left: 6em;
|
||||||
|
}
|
||||||
|
.one-test-summary {
|
||||||
|
margin-left: 6em;
|
||||||
|
}
|
||||||
|
.full-test-summary {
|
||||||
|
padding-bottom: 0.5em;
|
||||||
|
padding-top: 0.5em;
|
||||||
|
border-top: 1px solid black;
|
||||||
|
}
|
||||||
.input-wrapper {
|
.input-wrapper {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -167,8 +167,6 @@ globalThis.sqlite3InitModule = sqlite3InitModule;
|
|||||||
/** Running total of the number of tests run via
|
/** Running total of the number of tests run via
|
||||||
this API. */
|
this API. */
|
||||||
counter: 0,
|
counter: 0,
|
||||||
/* Separator line for log messages. */
|
|
||||||
separator: '------------------------------------------------------------',
|
|
||||||
/**
|
/**
|
||||||
If expr is a function, it is called and its result
|
If expr is a function, it is called and its result
|
||||||
is returned, coerced to a bool, else expr, coerced to
|
is returned, coerced to a bool, else expr, coerced to
|
||||||
@ -256,13 +254,11 @@ globalThis.sqlite3InitModule = sqlite3InitModule;
|
|||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
run: async function(sqlite3){
|
run: async function(sqlite3){
|
||||||
log(TestUtil.separator);
|
|
||||||
logClass('group-start',"Group #"+this.number+':',this.name);
|
logClass('group-start',"Group #"+this.number+':',this.name);
|
||||||
const indent = ' ';
|
|
||||||
if(this.predicate){
|
if(this.predicate){
|
||||||
const p = this.predicate(sqlite3);
|
const p = this.predicate(sqlite3);
|
||||||
if(!p || 'string'===typeof p){
|
if(!p || 'string'===typeof p){
|
||||||
logClass('warning',indent,
|
logClass(['warning','skipping-group'],
|
||||||
"SKIPPING group:", p ? p : "predicate says to" );
|
"SKIPPING group:", p ? p : "predicate says to" );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -274,11 +270,11 @@ globalThis.sqlite3InitModule = sqlite3InitModule;
|
|||||||
for(const t of this.tests){
|
for(const t of this.tests){
|
||||||
++i;
|
++i;
|
||||||
const n = this.number+"."+i;
|
const n = this.number+"."+i;
|
||||||
log(indent, n+":", t.name);
|
logClass('one-test-line', n+":", t.name);
|
||||||
if(t.predicate){
|
if(t.predicate){
|
||||||
const p = t.predicate(sqlite3);
|
const p = t.predicate(sqlite3);
|
||||||
if(!p || 'string'===typeof p){
|
if(!p || 'string'===typeof p){
|
||||||
logClass('warning',indent,
|
logClass(['warning','skipping-test'],
|
||||||
"SKIPPING:", p ? p : "predicate says to" );
|
"SKIPPING:", p ? p : "predicate says to" );
|
||||||
skipped.push( n+': '+t.name );
|
skipped.push( n+': '+t.name );
|
||||||
continue;
|
continue;
|
||||||
@ -295,12 +291,13 @@ globalThis.sqlite3InitModule = sqlite3InitModule;
|
|||||||
await rc;
|
await rc;
|
||||||
const then = performance.now();
|
const then = performance.now();
|
||||||
runtime += then - now;
|
runtime += then - now;
|
||||||
logClass('faded',indent, indent,
|
logClass(['faded','one-test-summary'],
|
||||||
TestUtil.counter - tc, 'assertion(s) in',
|
TestUtil.counter - tc, 'assertion(s) in',
|
||||||
roundMs(then-now),'ms');
|
roundMs(then-now),'ms');
|
||||||
}
|
}
|
||||||
logClass('green',
|
logClass(['green','group-end'],
|
||||||
"Group #"+this.number+":",(TestUtil.counter - assertCount),
|
//"Group #"+this.number+":",
|
||||||
|
(TestUtil.counter - assertCount),
|
||||||
"assertion(s) in",roundMs(runtime),"ms");
|
"assertion(s) in",roundMs(runtime),"ms");
|
||||||
if(0 && skipped.length){
|
if(0 && skipped.length){
|
||||||
logClass('warning',"SKIPPED test(s) in group",this.number+":",skipped);
|
logClass('warning',"SKIPPED test(s) in group",this.number+":",skipped);
|
||||||
@ -336,8 +333,7 @@ globalThis.sqlite3InitModule = sqlite3InitModule;
|
|||||||
await g.run(sqlite3);
|
await g.run(sqlite3);
|
||||||
runtime += performance.now() - now;
|
runtime += performance.now() - now;
|
||||||
}
|
}
|
||||||
log(TestUtil.separator);
|
logClass(['strong','green','full-test-summary'],
|
||||||
logClass(['strong','green'],
|
|
||||||
"Done running tests.",TestUtil.counter,"assertions in",
|
"Done running tests.",TestUtil.counter,"assertions in",
|
||||||
roundMs(runtime),'ms');
|
roundMs(runtime),'ms');
|
||||||
pok();
|
pok();
|
||||||
@ -3042,10 +3038,13 @@ globalThis.sqlite3InitModule = sqlite3InitModule;
|
|||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
let u1, u2;
|
let u1, u2;
|
||||||
|
// Ensure that two immediately-consecutive installations
|
||||||
|
// resolve to the same Promise instead of triggering
|
||||||
|
// a locking error.
|
||||||
const P1 = inst(sahPoolConfig).then(u=>u1 = u).catch(catcher),
|
const P1 = inst(sahPoolConfig).then(u=>u1 = u).catch(catcher),
|
||||||
P2 = inst(sahPoolConfig).then(u=>u2 = u).catch(catcher);
|
P2 = inst(sahPoolConfig).then(u=>u2 = u).catch(catcher);
|
||||||
await Promise.all([P1, P2]);
|
await Promise.all([P1, P2]);
|
||||||
if(!P1) return;
|
if(!(await P1)) return;
|
||||||
T.assert(u1 === u2)
|
T.assert(u1 === u2)
|
||||||
.assert(sahPoolConfig.name === u1.vfsName)
|
.assert(sahPoolConfig.name === u1.vfsName)
|
||||||
.assert(sqlite3.capi.sqlite3_vfs_find(sahPoolConfig.name))
|
.assert(sqlite3.capi.sqlite3_vfs_find(sahPoolConfig.name))
|
||||||
@ -3201,7 +3200,7 @@ globalThis.sqlite3InitModule = sqlite3InitModule;
|
|||||||
}else{
|
}else{
|
||||||
logClass('warning',"sqlite3_wasm_test_...() APIs unavailable.");
|
logClass('warning',"sqlite3_wasm_test_...() APIs unavailable.");
|
||||||
}
|
}
|
||||||
log("registered vfs list =",capi.sqlite3_js_vfs_list());
|
log("registered vfs list =",capi.sqlite3_js_vfs_list().join(', '));
|
||||||
TestUtil.runTests(sqlite3);
|
TestUtil.runTests(sqlite3);
|
||||||
});
|
});
|
||||||
})(self);
|
})(self);
|
||||||
|
14
manifest
14
manifest
@ -1,5 +1,5 @@
|
|||||||
C Internal\srefactoring\sin\sopfs-sahpool.\sMove\sOPFS\stests\sto\sthe\send\sof\stester1.c-cpp.js.
|
C Appearance\sand\slegibility\simprovements\sfor\stester1.js.
|
||||||
D 2023-07-19T08:18:25.901
|
D 2023-07-19T11:33:52.985
|
||||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||||
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
||||||
@ -512,7 +512,7 @@ F ext/wasm/batch-runner.js 0dad6a02ad796f1003d3b7048947d275c4d6277f63767b8e685c2
|
|||||||
F ext/wasm/c-pp.c 6d80d8569d85713effe8b0818a3cf51dc779e3f0bf8dc88771b8998552ee25b4
|
F ext/wasm/c-pp.c 6d80d8569d85713effe8b0818a3cf51dc779e3f0bf8dc88771b8998552ee25b4
|
||||||
F ext/wasm/common/SqliteTestUtil.js 7adaeffef757d8708418dc9190f72df22367b531831775804b31598b44f6aa51
|
F ext/wasm/common/SqliteTestUtil.js 7adaeffef757d8708418dc9190f72df22367b531831775804b31598b44f6aa51
|
||||||
F ext/wasm/common/emscripten.css 11bd104b6c0d597c67d40cc8ecc0a60dae2b965151e3b6a37fa5708bac3acd15
|
F ext/wasm/common/emscripten.css 11bd104b6c0d597c67d40cc8ecc0a60dae2b965151e3b6a37fa5708bac3acd15
|
||||||
F ext/wasm/common/testing.css 0ff15602a3ab2bad8aef2c3bd120c7ee3fd1c2054ad2ace7e214187ae68d926f
|
F ext/wasm/common/testing.css cae1f8cbfc9f516e22af0524deab10569120860ea8f12bf73204838cee6b63a1
|
||||||
F ext/wasm/common/whwasmutil.js ae263dec9d7384f4c530f324b99d00516a4d6f26424372daee65031e00eb49b3
|
F ext/wasm/common/whwasmutil.js ae263dec9d7384f4c530f324b99d00516a4d6f26424372daee65031e00eb49b3
|
||||||
F ext/wasm/demo-123-worker.html a0b58d9caef098a626a1a1db567076fca4245e8d60ba94557ede8684350a81ed
|
F ext/wasm/demo-123-worker.html a0b58d9caef098a626a1a1db567076fca4245e8d60ba94557ede8684350a81ed
|
||||||
F ext/wasm/demo-123.html 8c70a412ce386bd3796534257935eb1e3ea5c581e5d5aea0490b8232e570a508
|
F ext/wasm/demo-123.html 8c70a412ce386bd3796534257935eb1e3ea5c581e5d5aea0490b8232e570a508
|
||||||
@ -549,7 +549,7 @@ F ext/wasm/test-opfs-vfs.html 1f2d672f3f3fce810dfd48a8d56914aba22e45c6834e262555
|
|||||||
F ext/wasm/test-opfs-vfs.js f09266873e1a34d9bdb6d3981ec8c9e382f31f215c9fd2f9016d2394b8ae9b7b
|
F ext/wasm/test-opfs-vfs.js f09266873e1a34d9bdb6d3981ec8c9e382f31f215c9fd2f9016d2394b8ae9b7b
|
||||||
F ext/wasm/tester1-worker.html ebc4b820a128963afce328ecf63ab200bd923309eb939f4110510ab449e9814c
|
F ext/wasm/tester1-worker.html ebc4b820a128963afce328ecf63ab200bd923309eb939f4110510ab449e9814c
|
||||||
F ext/wasm/tester1.c-pp.html 1c1bc78b858af2019e663b1a31e76657b73dc24bede28ca92fbe917c3a972af2
|
F ext/wasm/tester1.c-pp.html 1c1bc78b858af2019e663b1a31e76657b73dc24bede28ca92fbe917c3a972af2
|
||||||
F ext/wasm/tester1.c-pp.js a72fc43950ce26c1ad7cee47aa225dd18efdb92743cf616b2e114b4cd1cdf2dd
|
F ext/wasm/tester1.c-pp.js d20a88f99fa78d50bed4de69270aed4902ae7901071797f3e3b095684736d830
|
||||||
F ext/wasm/tests/opfs/concurrency/index.html 0802373d57034d51835ff6041cda438c7a982deea6079efd98098d3e42fbcbc1
|
F ext/wasm/tests/opfs/concurrency/index.html 0802373d57034d51835ff6041cda438c7a982deea6079efd98098d3e42fbcbc1
|
||||||
F ext/wasm/tests/opfs/concurrency/test.js a98016113eaf71e81ddbf71655aa29b0fed9a8b79a3cdd3620d1658eb1cc9a5d
|
F ext/wasm/tests/opfs/concurrency/test.js a98016113eaf71e81ddbf71655aa29b0fed9a8b79a3cdd3620d1658eb1cc9a5d
|
||||||
F ext/wasm/tests/opfs/concurrency/worker.js 0a8c1a3e6ebb38aabbee24f122693f1fb29d599948915c76906681bb7da1d3d2
|
F ext/wasm/tests/opfs/concurrency/worker.js 0a8c1a3e6ebb38aabbee24f122693f1fb29d599948915c76906681bb7da1d3d2
|
||||||
@ -2044,8 +2044,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
|
|||||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||||
P 60713fa9c4627ef17e0b8778eee37913d2b930c5a06414721a00af30e1395090
|
P 6bd5a7413dd830ca41b587a2826fb599a2196fb0186646a2333500f950b3cf4d
|
||||||
R b81da7c28422da4e0ac61aef8c2566f8
|
R b499063b7173978725e0c6adeaf3d1ef
|
||||||
U stephan
|
U stephan
|
||||||
Z 2d92190e2a732ef23d4b23ca479d2da6
|
Z aeff227bd99478c07e8d0a15233f4c66
|
||||||
# Remove this line to create a well-formed Fossil manifest.
|
# Remove this line to create a well-formed Fossil manifest.
|
||||||
|
@ -1 +1 @@
|
|||||||
6bd5a7413dd830ca41b587a2826fb599a2196fb0186646a2333500f950b3cf4d
|
4fd3ed1b6405f690825c9993e56b199d4a7fb497cf9131815c803150b8b96528
|
Loading…
Reference in New Issue
Block a user