123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- /**
- * Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/
- */
- var testGenerator = testSteps();
- function testSteps()
- {
- const name = this.window ? window.location.pathname : "Splendid Test";
- const objectStores = [ "foo", "bar" ];
- let request = indexedDB.open(name, 1);
- request.onerror = errorHandler;
- request.onupgradeneeded = grabEventAndContinueHandler;
- let event = yield undefined;
- let db = event.target.result;
- is(db.objectStoreNames.length, 0, "Correct objectStoreNames list");
- event.target.onsuccess = grabEventAndContinueHandler;
- for (let i in objectStores) {
- db.createObjectStore(objectStores[i], { autoIncrement: true });
- }
- event = yield undefined;
- is(db.objectStoreNames.length, objectStores.length,
- "Correct objectStoreNames list");
- for (let i = 0; i < 50; i++) {
- let stepNumber = 0;
- request = db.transaction(["foo"], "readwrite")
- .objectStore("foo")
- .add({});
- request.onerror = errorHandler;
- request.onsuccess = function(event) {
- is(stepNumber, 1, "This callback came first");
- stepNumber++;
- event.target.transaction.oncomplete = grabEventAndContinueHandler;
- }
- request = db.transaction(["foo"], "readwrite")
- .objectStore("foo")
- .add({});
- request.onerror = errorHandler;
- request.onsuccess = function(event) {
- is(stepNumber, 2, "This callback came second");
- stepNumber++;
- event.target.transaction.oncomplete = grabEventAndContinueHandler;
- }
- request = db.transaction(["foo", "bar"], "readwrite")
- .objectStore("bar")
- .add({});
- request.onerror = errorHandler;
- request.onsuccess = function(event) {
- is(stepNumber, 3, "This callback came third");
- stepNumber++;
- event.target.transaction.oncomplete = grabEventAndContinueHandler;
- }
- request = db.transaction(["foo", "bar"], "readwrite")
- .objectStore("bar")
- .add({});
- request.onerror = errorHandler;
- request.onsuccess = function(event) {
- is(stepNumber, 4, "This callback came fourth");
- stepNumber++;
- event.target.transaction.oncomplete = grabEventAndContinueHandler;
- }
- request = db.transaction(["bar"], "readwrite")
- .objectStore("bar")
- .add({});
- request.onerror = errorHandler;
- request.onsuccess = function(event) {
- is(stepNumber, 5, "This callback came fifth");
- stepNumber++;
- event.target.transaction.oncomplete = grabEventAndContinueHandler;
- }
- stepNumber++;
- yield undefined; yield undefined; yield undefined; yield undefined; yield undefined;
- is(stepNumber, 6, "All callbacks received");
- }
- finishTest();
- yield undefined;
- }
|