gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-wallet-core] branch master updated: more WPTs


From: gnunet
Subject: [taler-wallet-core] branch master updated: more WPTs
Date: Tue, 16 Feb 2021 16:45:21 +0100

This is an automated email from the git hooks/post-receive script.

dold pushed a commit to branch master
in repository wallet-core.

The following commit(s) were added to refs/heads/master by this push:
     new f9df95de more WPTs
f9df95de is described below

commit f9df95ded5ba1d6a6edadd24615c5e175ea5bac8
Author: Florian Dold <florian@dold.me>
AuthorDate: Tue Feb 16 16:45:15 2021 +0100

    more WPTs
---
 ...dbcursor-reused.ts => idbcursor-reused.test.ts} |  0
 .../src/idb-wpt-ported/idbfactory-cmp.test.ts      | 63 ++++++++++++++++++
 .../src/idb-wpt-ported/idbfactory-open.test.ts     | 76 ++++++++++++++++++++++
 .../{idbindex_get.test.ts => idbindex-get.test.ts} |  0
 ...tore_add.test.ts => idbobjectstore-add.test.ts} |  0
 ...stqueue.ts => transaction-requestqueue.test.ts} |  0
 .../idb-bridge/src/idb-wpt-ported/wptsupport.ts    |  2 +-
 7 files changed, 140 insertions(+), 1 deletion(-)

diff --git a/packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.ts 
b/packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.test.ts
similarity index 100%
rename from packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.ts
rename to packages/idb-bridge/src/idb-wpt-ported/idbcursor-reused.test.ts
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
new file mode 100644
index 00000000..c7a25a46
--- /dev/null
+++ b/packages/idb-bridge/src/idb-wpt-ported/idbfactory-cmp.test.ts
@@ -0,0 +1,63 @@
+import test from "ava";
+import { createdb, idbFactory } from "./wptsupport";
+
+test("WPT idbfactory-cmp*.html", async (t) => {
+  const indexedDB = idbFactory;
+  var greater = indexedDB.cmp(2, 1);
+  var equal = indexedDB.cmp(2, 2);
+  var less = indexedDB.cmp(1, 2);
+
+  t.deepEqual(greater, 1, "greater");
+  t.deepEqual(equal, 0, "equal");
+  t.deepEqual(less, -1, "less");
+
+  t.throws(
+    () => {
+      // @ts-expect-error
+      indexedDB.cmp();
+    },
+    { instanceOf: TypeError },
+  );
+
+  t.throws(
+    () => {
+      indexedDB.cmp(null, null);
+    },
+    { name: "DataError" },
+  );
+
+  t.throws(
+    () => {
+      indexedDB.cmp(1, null);
+    },
+    { name: "DataError" },
+  );
+
+  t.throws(
+    () => {
+      indexedDB.cmp(null, 1);
+    },
+    { name: "DataError" },
+  );
+
+  t.throws(
+    () => {
+      indexedDB.cmp(NaN, NaN);
+    },
+    { name: "DataError" },
+  );
+
+  t.throws(
+    () => {
+      indexedDB.cmp(1, NaN);
+    },
+    { name: "DataError" },
+  );
+
+  t.throws(
+    () => {
+      indexedDB.cmp(NaN, 1);
+    },
+    { name: "DataError" },
+  );
+});
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
new file mode 100644
index 00000000..68d58a16
--- /dev/null
+++ b/packages/idb-bridge/src/idb-wpt-ported/idbfactory-open.test.ts
@@ -0,0 +1,76 @@
+import test from "ava";
+import { createdb, idbFactory } from "./wptsupport";
+
+// IDBFactory.open() - request has no source
+test("WPT idbfactory-open.htm", async (t) => {
+  await new Promise<void>((resolve, reject) => {
+    var open_rq = createdb(t, undefined, 9);
+
+    open_rq.onupgradeneeded = function (e) {};
+    open_rq.onsuccess = function (e: any) {
+      t.deepEqual(e.target.source, null, "source");
+      resolve();
+    };
+  });
+  t.pass();
+});
+
+// IDBFactory.open() - database 'name' and 'version' are correctly set
+test("WPT idbfactory-open2.htm", async (t) => {
+  await new Promise<void>((resolve, reject) => {
+    var database_name = __filename + "-database_name";
+    var open_rq = createdb(t, database_name, 13);
+
+    open_rq.onupgradeneeded = function (e) {};
+    open_rq.onsuccess = function (e: any) {
+      var db = e.target.result;
+      t.deepEqual(db.name, database_name, "db.name");
+      t.deepEqual(db.version, 13, "db.version");
+      resolve;
+    };
+  });
+  t.pass();
+});
+
+// IDBFactory.open() - no version opens current database
+test("WPT idbfactory-open3.htm", async (t) => {
+  const indexedDB = idbFactory;
+  await new Promise<void>((resolve, reject) => {
+    var open_rq = createdb(t, undefined, 13);
+    var did_upgrade = false;
+
+    open_rq.onupgradeneeded = function () {};
+    open_rq.onsuccess = function (e: any) {
+      var db = e.target.result;
+      db.close();
+
+      var open_rq2 = indexedDB.open(db.name);
+      open_rq2.onsuccess = function (e: any) {
+        t.deepEqual(e.target.result.version, 13, "db.version");
+        e.target.result.close();
+        resolve();
+      };
+      open_rq2.onupgradeneeded = () => t.fail("Unexpected upgradeneeded");
+      open_rq2.onerror = () => t.fail("Unexpected error");
+    };
+  });
+  t.pass();
+});
+
+
+// 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, __filename + '-database_name');
+
+    open_rq.onupgradeneeded = function(e: any) {
+        t.deepEqual(e.target.result.version, 1, "db.version");
+    };
+    open_rq.onsuccess = function(e: any) {
+        t.deepEqual(e.target.result.version, 1, "db.version");
+        resolve();
+    };
+  });
+  t.pass();
+});
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
similarity index 100%
rename from packages/idb-bridge/src/idb-wpt-ported/idbindex_get.test.ts
rename to packages/idb-bridge/src/idb-wpt-ported/idbindex-get.test.ts
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
similarity index 100%
rename from packages/idb-bridge/src/idb-wpt-ported/idbobjectstore_add.test.ts
rename to packages/idb-bridge/src/idb-wpt-ported/idbobjectstore-add.test.ts
diff --git a/packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.ts 
b/packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.test.ts
similarity index 100%
rename from packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.ts
rename to 
packages/idb-bridge/src/idb-wpt-ported/transaction-requestqueue.test.ts
diff --git a/packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts 
b/packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts
index 1c25bb8e..2d52ea07 100644
--- a/packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts
+++ b/packages/idb-bridge/src/idb-wpt-ported/wptsupport.ts
@@ -15,7 +15,7 @@ import { compareKeys } from "../util/cmp";
 BridgeIDBFactory.enableTracing = true;
 const backend = new MemoryBackend();
 backend.enableTracing = true;
-const idbFactory = new BridgeIDBFactory(backend);
+export const idbFactory = new BridgeIDBFactory(backend);
 
 const self = {
   indexedDB: idbFactory,

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]