diff options
author | Florian Dold <florian@dold.me> | 2023-07-11 15:41:48 +0200 |
---|---|---|
committer | Florian Dold <florian@dold.me> | 2023-08-22 08:01:13 +0200 |
commit | b2d0ad57ddf251a109d536cdc49fb6505dbdc50c (patch) | |
tree | 7eaeca3ad8ec97a9c1970c1004feda2d61c3441b /packages/idb-bridge/src/idb-wpt-ported | |
parent | 58fdf9dc091b076787a9746c405fe6a9366f5da6 (diff) | |
download | wallet-core-b2d0ad57ddf251a109d536cdc49fb6505dbdc50c.tar.xz |
sqlite3 backend for idb-bridge / wallet-core
Diffstat (limited to 'packages/idb-bridge/src/idb-wpt-ported')
27 files changed, 102 insertions, 64 deletions
diff --git a/packages/idb-bridge/src/idb-wpt-ported/abort-in-initial-upgradeneeded.test.ts b/packages/idb-bridge/src/idb-wpt-ported/abort-in-initial-upgradeneeded.test.ts index bbbcf9b94..14d4f7d6e 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/abort-in-initial-upgradeneeded.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/abort-in-initial-upgradeneeded.test.ts @@ -1,5 +1,7 @@ import test from "ava"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); test("WPT test abort-in-initial-upgradeneeded.htm", async (t) => { await new Promise<void>((resolve, reject) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/close-in-upgradeneeded.test.ts b/packages/idb-bridge/src/idb-wpt-ported/close-in-upgradeneeded.test.ts index 723a0abb5..1a730df0b 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/close-in-upgradeneeded.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/close-in-upgradeneeded.test.ts @@ -1,5 +1,7 @@ import test from "ava"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // When db.close is called in upgradeneeded, the db is cleaned up on refresh test("WPT test close-in-upgradeneeded.htm", (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/cursor-overloads.test.ts b/packages/idb-bridge/src/idb-wpt-ported/cursor-overloads.test.ts index db2cdbca8..795d515ed 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/cursor-overloads.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/cursor-overloads.test.ts @@ -1,7 +1,9 @@ import test from "ava"; import { BridgeIDBKeyRange } from "../bridge-idb.js"; import { IDBRequest } from "../idbtypes.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); const IDBKeyRange = BridgeIDBKeyRange; diff --git a/packages/idb-bridge/src/idb-wpt-ported/event-dispatch-active-flag.test.ts b/packages/idb-bridge/src/idb-wpt-ported/event-dispatch-active-flag.test.ts index acc2a7578..e57b48f76 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/event-dispatch-active-flag.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/event-dispatch-active-flag.test.ts @@ -2,10 +2,13 @@ import test from "ava"; import { BridgeIDBRequest } from "../bridge-idb.js"; import { indexeddb_test, + initTestIndexedDB, is_transaction_active, keep_alive, } from "./wptsupport.js"; +test.before("test DB initialization", initTestIndexedDB); + test("WPT test abort-in-initial-upgradeneeded.htm (subtest 1)", async (t) => { // Transactions are active during success handlers await indexeddb_test( diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-advance-index.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-advance-index.test.ts index 108e7c91c..1bf5ca697 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-advance-index.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-advance-index.test.ts @@ -1,6 +1,8 @@ import test from "ava"; import { BridgeIDBCursor,BridgeIDBRequest } from "../bridge-idb.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); test("WPT test idbcursor_advance_index.htm", async (t) => { await new Promise<void>((resolve, reject) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-index.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-index.test.ts index f8b3a0f01..3cea3e86d 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-index.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-index.test.ts @@ -1,6 +1,9 @@ import test from "ava"; import { BridgeIDBCursor, BridgeIDBCursorWithValue } from "../bridge-idb.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; +import { IDBDatabase } from "../idbtypes.js"; + +test.before("test DB initialization", initTestIndexedDB); test("WPT test idbcursor_continue_index.htm", (t) => { return new Promise((resolve, reject) => { @@ -209,7 +212,7 @@ test("WPT idbcursor-continue-index4.htm", (t) => { // IDBCursor.continue() - index - iterate using 'prevunique' test("WPT idbcursor-continue-index5.htm", (t) => { return new Promise((resolve, reject) => { - var db: any; + var db: IDBDatabase; const records = [ { pKey: "primaryKey_0", iKey: "indexKey_0" }, { pKey: "primaryKey_1", iKey: "indexKey_1" }, diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-objectstore.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-objectstore.test.ts index e3169195f..d8b6f2b31 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-objectstore.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-continue-objectstore.test.ts @@ -1,7 +1,9 @@ import test from "ava"; import { BridgeIDBCursor } from "../bridge-idb.js"; import { IDBDatabase } from "../idbtypes.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBCursor.continue() - object store - iterate to the next record test("WPT test idbcursor_continue_objectstore.htm", (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-exception-order.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-exception-order.test.ts index f771d19a2..e159129da 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-exception-order.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-exception-order.test.ts @@ -1,5 +1,7 @@ import test from "ava"; -import { indexeddb_test } from "./wptsupport.js"; +import { indexeddb_test, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); test("WPT idbcursor-delete-exception-order.htm", async (t) => { // 'IDBCursor.delete exception order: TransactionInactiveError vs. ReadOnlyError' diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-index.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-index.test.ts index 0232cf247..d34c9c3f9 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-index.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-index.test.ts @@ -1,7 +1,9 @@ import test from "ava"; import { BridgeIDBCursor } from "../bridge-idb.js"; import { IDBCursor } from "../idbtypes.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBCursor.delete() - index - remove a record from the object store test("WPT idbcursor-delete-index.htm", (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-objectstore.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-objectstore.test.ts index 9410ca79e..2b9993b19 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-objectstore.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-delete-objectstore.test.ts @@ -1,6 +1,8 @@ import test from "ava"; import { BridgeIDBCursor } from "../bridge-idb.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBCursor.delete() - object store - remove a record from the object store test("WPT idbcursor-delete-objectstore.htm", (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.test.ts index 54745802e..b13bd1fc3 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.test.ts @@ -1,5 +1,7 @@ import test from "ava"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); test("WPT idbcursor-reused.htm", async (t) => { await new Promise<void>((resolve, reject) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-update-index.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-update-index.test.ts index 81a7cd753..8a878b35a 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-update-index.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-update-index.test.ts @@ -3,10 +3,13 @@ import { BridgeIDBCursor, BridgeIDBKeyRange } from "../bridge-idb.js"; import { createDatabase, createdb, + initTestIndexedDB, promiseForRequest, promiseForTransaction, } from "./wptsupport.js"; +test.before("test DB initialization", initTestIndexedDB); + // IDBCursor.update() - index - modify a record in the object store test("WPT test idbcursor_update_index.htm", (t) => { return new Promise((resolve, reject) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbfactory-cmp.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbfactory-cmp.test.ts index a6cb97612..450bec7be 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbfactory-cmp.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbfactory-cmp.test.ts @@ -1,8 +1,10 @@ import test from "ava"; -import { idbFactory } from "./wptsupport.js"; +import { initTestIndexedDB, useTestIndexedDb } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); test("WPT idbfactory-cmp*.html", async (t) => { - const indexedDB = idbFactory; + const indexedDB = useTestIndexedDb(); var greater = indexedDB.cmp(2, 1); var equal = indexedDB.cmp(2, 2); var less = indexedDB.cmp(1, 2); diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbfactory-open.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbfactory-open.test.ts index 02618f171..b8046fc1b 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbfactory-open.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbfactory-open.test.ts @@ -1,7 +1,10 @@ import test from "ava"; import { BridgeIDBVersionChangeEvent } from "../bridge-idb.js"; import FakeEvent from "../util/FakeEvent.js"; -import { createdb, format_value, idbFactory } from "./wptsupport.js"; +import { createdb, format_value, initTestIndexedDB, useTestIndexedDb } from "./wptsupport.js"; +import { IDBDatabase } from "../idbtypes.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBFactory.open() - request has no source test("WPT idbfactory-open.htm", async (t) => { @@ -36,7 +39,7 @@ test("WPT idbfactory-open2.htm", async (t) => { // IDBFactory.open() - no version opens current database test("WPT idbfactory-open3.htm", async (t) => { - const indexedDB = idbFactory; + const indexedDB = useTestIndexedDb(); await new Promise<void>((resolve, reject) => { var open_rq = createdb(t, undefined, 13); var did_upgrade = false; @@ -61,7 +64,6 @@ test("WPT idbfactory-open3.htm", async (t) => { // IDBFactory.open() - new database has default version test("WPT idbfactory-open4.htm", async (t) => { - const indexedDB = idbFactory; await new Promise<void>((resolve, reject) => { var open_rq = createdb(t, t.title + "-database_name"); @@ -78,7 +80,6 @@ test("WPT idbfactory-open4.htm", async (t) => { // IDBFactory.open() - new database is empty test("WPT idbfactory-open5.htm", async (t) => { - const indexedDB = idbFactory; await new Promise<void>((resolve, reject) => { var open_rq = createdb(t, t.title + "-database_name"); @@ -97,7 +98,7 @@ test("WPT idbfactory-open5.htm", async (t) => { // IDBFactory.open() - open database with a lower version than current test("WPT idbfactory-open6.htm", async (t) => { - const indexedDB = idbFactory; + const indexedDB = useTestIndexedDb(); await new Promise<void>((resolve, reject) => { var open_rq = createdb(t, undefined, 13); var open_rq2: any; @@ -131,7 +132,7 @@ test("WPT idbfactory-open6.htm", async (t) => { // IDBFactory.open() - open database with a higher version than current test("WPT idbfactory-open7.htm", async (t) => { - const indexedDB = idbFactory; + const indexedDB = useTestIndexedDb(); await new Promise<void>((resolve, reject) => { var open_rq = createdb(t, undefined, 13); var did_upgrade = false; @@ -169,7 +170,7 @@ test("WPT idbfactory-open7.htm", async (t) => { // IDBFactory.open() - error in version change transaction aborts open test("WPT idbfactory-open8.htm", async (t) => { - const indexedDB = idbFactory; + const indexedDB = useTestIndexedDb(); await new Promise<void>((resolve, reject) => { var open_rq = createdb(t, undefined, 13); var did_upgrade = false; @@ -193,7 +194,7 @@ test("WPT idbfactory-open8.htm", async (t) => { // IDBFactory.open() - errors in version argument test("WPT idbfactory-open9.htm", async (t) => { - const indexedDB = idbFactory; + const indexedDB = useTestIndexedDb(); function should_throw(val: any, name?: string) { if (!name) { name = typeof val == "object" && val ? "object" : format_value(val); @@ -281,9 +282,9 @@ test("WPT idbfactory-open9.htm", async (t) => { // IDBFactory.open() - error in version change transaction aborts open test("WPT idbfactory-open10.htm", async (t) => { - const indexedDB = idbFactory; + const indexedDB = useTestIndexedDb(); await new Promise<void>((resolve, reject) => { - var db: any, db2: any; + var db: IDBDatabase, db2: IDBDatabase; var open_rq = createdb(t, undefined, 9); open_rq.onupgradeneeded = function (e: any) { @@ -350,7 +351,7 @@ test("WPT idbfactory-open10.htm", async (t) => { var open_rq3 = indexedDB.open(db.name); open_rq3.onsuccess = function (e: any) { - var db3 = e.target.result; + var db3: IDBDatabase = e.target.result; t.true( db3.objectStoreNames.contains("store"), @@ -407,7 +408,7 @@ test("WPT idbfactory-open10.htm", async (t) => { // IDBFactory.open() - second open's transaction is available to get objectStores test("WPT idbfactory-open11.htm", async (t) => { - const indexedDB = idbFactory; + const indexedDB = useTestIndexedDb(); await new Promise<void>((resolve, reject) => { var db: any; var count_done = 0; @@ -472,8 +473,6 @@ test("WPT idbfactory-open11.htm", async (t) => { // IDBFactory.open() - upgradeneeded gets VersionChangeEvent test("WPT idbfactory-open12.htm", async (t) => { - const indexedDB = idbFactory; - var db: any; var open_rq = createdb(t, undefined, 9); diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbindex-get.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbindex-get.test.ts index d3b6e844e..ad8a57305 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbindex-get.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbindex-get.test.ts @@ -1,7 +1,9 @@ import test from "ava"; import { BridgeIDBKeyRange } from "../bridge-idb.js"; import { IDBDatabase } from "../idbtypes.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBIndex.get() - returns the record test("WPT idbindex_get.htm", async (t) => { @@ -93,7 +95,7 @@ test("WPT idbindex_get3.htm", async (t) => { // IDBIndex.get() - returns the record with the first key in the range test("WPT idbindex_get4.htm", async (t) => { await new Promise<void>((resolve, reject) => { - var db: any; + var db: IDBDatabase; var open_rq = createdb(t); diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbindex-openCursor.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbindex-openCursor.test.ts index 765bcf06a..5d61e68e5 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbindex-openCursor.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbindex-openCursor.test.ts @@ -1,5 +1,7 @@ import test from "ava"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBIndex.openCursor() - throw InvalidStateError when the index is deleted test("WPT test idbindex-openCursor.htm", (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add-put-exception-order.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add-put-exception-order.test.ts index 901eda89c..60bf0cfb2 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add-put-exception-order.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add-put-exception-order.test.ts @@ -1,5 +1,7 @@ import test, { ExecutionContext } from "ava"; -import { indexeddb_test } from "./wptsupport.js"; +import { indexeddb_test, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); async function t1(t: ExecutionContext, method: string): Promise<void> { await indexeddb_test( @@ -55,8 +57,6 @@ async function t2(t: ExecutionContext, method: string): Promise<void> { done(); }, 0); - - console.log(`queued task for ${method}`); }, "t2", ); diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add.test.ts index e8bc17471..4941c43d6 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add.test.ts @@ -1,7 +1,9 @@ import test from "ava"; import { BridgeIDBRequest } from "../bridge-idb.js"; import { IDBDatabase } from "../idbtypes.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBObjectStore.add() - add with an inline key test("WPT idbobjectstore_add.htm", async (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-get.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-get.test.ts index 79064d19d..922c2bcf4 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-get.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-get.test.ts @@ -1,6 +1,8 @@ import test from "ava"; import { BridgeIDBKeyRange } from "../bridge-idb.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBObjectStore.get() - key is a number test("WPT idbobjectstore_get.htm", (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-put.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-put.test.ts index 152e3a9c1..f051c57b6 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-put.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-put.test.ts @@ -1,6 +1,8 @@ import test from "ava"; import { BridgeIDBRequest } from "../bridge-idb.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBObjectStore.put() - put with an inline key test("WPT idbobjectstore_put.htm", (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-rename-store.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-rename-store.test.ts index a8aab828a..6f04552fa 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-rename-store.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-rename-store.test.ts @@ -6,9 +6,12 @@ import { createBooksStore, createDatabase, createNotBooksStore, + initTestIndexedDB, migrateDatabase, } from "./wptsupport.js"; +test.before("test DB initialization", initTestIndexedDB); + // IndexedDB: object store renaming support // IndexedDB object store rename in new transaction test("WPT idbobjectstore-rename-store.html (subtest 1)", async (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbtransaction-oncomplete.test.ts b/packages/idb-bridge/src/idb-wpt-ported/idbtransaction-oncomplete.test.ts index a501ff2c9..f728cd487 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/idbtransaction-oncomplete.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/idbtransaction-oncomplete.test.ts @@ -1,5 +1,7 @@ import test from "ava"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // IDBTransaction - complete event test("WPT idbtransaction-oncomplete.htm", async (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/keypath.test.ts b/packages/idb-bridge/src/idb-wpt-ported/keypath.test.ts index 7ef1301f7..f15f93873 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/keypath.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/keypath.test.ts @@ -1,5 +1,7 @@ import test from "ava"; -import { assert_key_equals, createdb } from "./wptsupport.js"; +import { assert_key_equals, createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); test("WPT test keypath.htm", async (t) => { function keypath( @@ -9,8 +11,6 @@ test("WPT test keypath.htm", async (t) => { desc?: string, ) { return new Promise<void>((resolve, reject) => { - console.log("key path", keypath); - console.log("checking", desc); let db: any; const store_name = "store-" + Date.now() + Math.random(); diff --git a/packages/idb-bridge/src/idb-wpt-ported/request-bubble-and-capture.test.ts b/packages/idb-bridge/src/idb-wpt-ported/request-bubble-and-capture.test.ts index 526c06784..14c8f3be5 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/request-bubble-and-capture.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/request-bubble-and-capture.test.ts @@ -1,6 +1,8 @@ import test from "ava"; import { EventTarget } from "../idbtypes.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // Bubbling and capturing of request events test("WPT request_bubble-and-capture.htm", async (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.test.ts b/packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.test.ts index 9d76e79f2..971330e3d 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.test.ts @@ -1,5 +1,7 @@ import test from "ava"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); // Transactions have a request queue test("transaction-requestqueue.htm", async (t) => { diff --git a/packages/idb-bridge/src/idb-wpt-ported/value.test.ts b/packages/idb-bridge/src/idb-wpt-ported/value.test.ts index a80ec2b5a..95712e152 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/value.test.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/value.test.ts @@ -1,6 +1,8 @@ import test from "ava"; import { IDBVersionChangeEvent } from "../idbtypes.js"; -import { createdb } from "./wptsupport.js"; +import { createdb, initTestIndexedDB } from "./wptsupport.js"; + +test.before("test DB initialization", initTestIndexedDB); test("WPT test value.htm, array", (t) => { return new Promise((resolve, reject) => { @@ -12,7 +14,6 @@ test("WPT test value.htm, array", (t) => { createdb(t).onupgradeneeded = function (e: IDBVersionChangeEvent) { (e.target as any).result.createObjectStore("store").add(value, 1); (e.target as any).onsuccess = (e: any) => { - console.log("in first onsuccess"); e.target.result .transaction("store") .objectStore("store") @@ -35,13 +36,10 @@ test("WPT test value.htm, date", (t) => { createdb(t).onupgradeneeded = function (e: IDBVersionChangeEvent) { (e.target as any).result.createObjectStore("store").add(value, 1); (e.target as any).onsuccess = (e: any) => { - console.log("in first onsuccess"); e.target.result .transaction("store") .objectStore("store") .get(1).onsuccess = (e: any) => { - console.log("target", e.target); - console.log("result", e.target.result); t.assert(e.target.result instanceof _instanceof, "instanceof"); resolve(); }; diff --git a/packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts b/packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts index 7f68a53e8..c648bf53f 100644 --- a/packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts +++ b/packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts @@ -1,5 +1,5 @@ import { ExecutionContext } from "ava"; -import { BridgeIDBFactory, BridgeIDBRequest } from "../bridge-idb.js"; +import { BridgeIDBRequest } from "../bridge-idb.js"; import { IDBDatabase, IDBIndex, @@ -8,17 +8,10 @@ import { IDBRequest, IDBTransaction, } from "../idbtypes.js"; -import { MemoryBackend } from "../MemoryBackend.js"; +import { initTestIndexedDB , useTestIndexedDb } from "../testingdb.js"; import { compareKeys } from "../util/cmp.js"; -BridgeIDBFactory.enableTracing = true; -const backend = new MemoryBackend(); -backend.enableTracing = true; -export const idbFactory = new BridgeIDBFactory(backend); - -const self = { - indexedDB: idbFactory, -}; +export { initTestIndexedDB, useTestIndexedDb } from "../testingdb.js" export function createdb( t: ExecutionContext<unknown>, @@ -27,8 +20,8 @@ export function createdb( ): IDBOpenDBRequest { var rq_open: IDBOpenDBRequest; dbname = dbname ? dbname : "testdb-" + new Date().getTime() + Math.random(); - if (version) rq_open = self.indexedDB.open(dbname, version); - else rq_open = self.indexedDB.open(dbname); + if (version) rq_open = useTestIndexedDb().open(dbname, version); + else rq_open = useTestIndexedDb().open(dbname); return rq_open; } @@ -111,7 +104,7 @@ export async function migrateNamedDatabase( migrationCallback: MigrationCallback, ): Promise<IDBDatabase> { return new Promise<IDBDatabase>((resolve, reject) => { - const request = self.indexedDB.open(databaseName, newVersion); + const request = useTestIndexedDb().open(databaseName, newVersion); request.onupgradeneeded = (event: any) => { const database = event.target.result; const transaction = event.target.transaction; @@ -175,7 +168,7 @@ export async function createDatabase( setupCallback: MigrationCallback, ): Promise<IDBDatabase> { const databaseName = makeDatabaseName(t.title); - const request = self.indexedDB.deleteDatabase(databaseName); + const request = useTestIndexedDb().deleteDatabase(databaseName); return migrateNamedDatabase(t, databaseName, 1, setupCallback); } @@ -463,9 +456,9 @@ export function indexeddb_test( options = Object.assign({ upgrade_will_abort: false }, options); const dbname = "testdb-" + new Date().getTime() + Math.random() + (dbsuffix ?? ""); - var del = self.indexedDB.deleteDatabase(dbname); + var del = useTestIndexedDb().deleteDatabase(dbname); del.onerror = () => t.fail("deleteDatabase should succeed"); - var open = self.indexedDB.open(dbname, 1); + var open = useTestIndexedDb().open(dbname, 1); open.onupgradeneeded = function () { var db = open.result; t.teardown(function () { @@ -474,7 +467,7 @@ export function indexeddb_test( e.preventDefault(); }; db.close(); - self.indexedDB.deleteDatabase(db.name); + useTestIndexedDb().deleteDatabase(db.name); }); var tx = open.transaction!; upgrade_func(resolve, db, tx, open); |