<html> <head> <link rel="stylesheet" href="../../fast/js/resources/js-test-style.css"> <script src="../../fast/js/resources/js-test-pre.js"></script> <script src="../../fast/js/resources/js-test-post-function.js"></script> <script src="resources/shared.js"></script> </head> <body> <p id="description"></p> <div id="console"></div> <script> description("Verify that queuing up several commands works (and they all fire)."); if (window.layoutTestController) layoutTestController.waitUntilDone(); function test() { request = evalAndLog("webkitIndexedDB.open('queued-commands')"); request.onsuccess = setVersion; request.onerror = unexpectedErrorCallback; } function setVersion() { db = evalAndLog("db = event.target.result"); request = evalAndLog("db.setVersion('new version')"); request.onsuccess = deleteExisting; request.onerror = unexpectedErrorCallback; } function deleteExisting() { debug("setVersionSuccess():"); window.trans = evalAndLog("trans = event.target.result"); shouldBeTrue("trans !== null"); trans.onabort = unexpectedAbortCallback; deleteAllObjectStores(db); window.store = evalAndLog("db.createObjectStore('storeName')"); window.indexObject = evalAndLog("store.createIndex('indexName', 'x')"); request = evalAndLog("store.add({x: 'value', y: 'zzz'}, 'key')"); request.onsuccess = function() { verifyAdd(0); }; request.onerror = unexpectedErrorCallback; request = evalAndLog("store.add({x: 'value2', y: 'zzz2'}, 'key2')"); request.onsuccess = function() { verifyAdd(1); }; request.onerror = unexpectedErrorCallback; request = evalAndLog("store.put({x: 'valu2', y: 'zz2'}, 'ky2')"); request.onsuccess = function() { verifyAdd(2); }; request.onerror = unexpectedErrorCallback; window.addCount = 0; } function verifyAdd(expected) { shouldBe("" + addCount++, "" + expected); if (addCount == 3) done(); if (addCount > 3) testFailed("Unexpected call to verifyAdd!"); } test(); var successfullyParsed = true; </script> </body> </html>