diff options
Diffstat (limited to 'ext/wasm/api')
-rw-r--r-- | ext/wasm/api/scratchpad-opfs-worker.js | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/ext/wasm/api/scratchpad-opfs-worker.js b/ext/wasm/api/scratchpad-opfs-worker.js deleted file mode 100644 index 5bc63c796..000000000 --- a/ext/wasm/api/scratchpad-opfs-worker.js +++ /dev/null @@ -1,86 +0,0 @@ -/* - 2022-05-22 - - The author disclaims copyright to this source code. In place of a - legal notice, here is a blessing: - - * May you do good and not evil. - * May you find forgiveness for yourself and forgive others. - * May you share freely, never taking more than you give. - - *********************************************************************** - - An experiment for wasmfs/opfs. This file MUST be in the same dir as - the sqlite3.js emscripten module or that module won't be able to - resolve the relative URIs (importScript()'s relative URI handling - is, quite frankly, broken). -*/ -'use strict'; -(function(){ - const toss = function(...args){throw new Error(args.join(' '))}; - importScripts('sqlite3.js'); - - /** - Posts a message in the form {type,data} unless passed more than 2 - args, in which case it posts {type, data:[arg1...argN]}. - */ - const wMsg = function(type,data){ - postMessage({ - type, - data: arguments.length<3 - ? data - : Array.prototype.slice.call(arguments,1) - }); - }; - - const stdout = console.log.bind(console); - const stderr = function(...args){wMsg('stderr', args);}; - - const test1 = function(db){ - db.execMulti("create table if not exists t(a);") - .callInTransaction(function(db){ - db.prepare("insert into t(a) values(?)") - .bind(new Date().getTime()) - .stepFinalize(); - stdout("Number of values in table t:", - db.selectValue("select count(*) from t")); - }); - }; - - const runTests = function(Module){ - //stdout("Module",Module); - self._MODULE = Module /* this is only to facilitate testing from the console */; - const sqlite3 = Module.sqlite3, - capi = sqlite3.capi, - oo = sqlite3.oo1, - wasm = capi.wasm; - stdout("Loaded sqlite3:",capi.sqlite3_libversion(), capi.sqlite3_sourceid()); - const persistentDir = capi.sqlite3_web_persistent_dir(); - if(persistentDir){ - stderr("Persistent storage dir:",persistentDir); - }else{ - stderr("No persistent storage available."); - } - const startTime = performance.now(); - let db; - try { - db = new oo.DB(persistentDir+'/foo.db'); - stdout("DB filename:",db.filename,db.fileName()); - const banner1 = '>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>', - banner2 = '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<'; - [ - test1 - ].forEach((f)=>{ - const n = performance.now(); - stdout(banner1,"Running",f.name+"()..."); - f(db, sqlite3, Module); - stdout(banner2,f.name+"() took ",(performance.now() - n),"ms"); - }); - }finally{ - if(db) db.close(); - } - stdout("Total test time:",(performance.now() - startTime),"ms"); - }; - - sqlite3InitModule(self.sqlite3TestModule).then(runTests); -})(); |