Diff
Modified: trunk/LayoutTests/ChangeLog (135222 => 135223)
--- trunk/LayoutTests/ChangeLog 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/ChangeLog 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,5 +1,30 @@
2012-11-19 David Grogan <[email protected]>
+ IndexedDB: last setVersion excision batch
+ https://bugs.webkit.org/show_bug.cgi?id=102713
+
+ Reviewed by Tony Chang.
+
+ * storage/indexeddb/resources/setversion-blocked-by-versionchange-close-in-blocked.js: Removed.
+ The crucial part of this test was a connection closing itself in its
+ blocked callback. This is no longer possible as there's now only a
+ handle to the connection after the blocked event is dealt with.
+
+ * storage/indexeddb/resources/setversion-blocked-by-versionchange-close.js:
+ This test exposes a cascade of errors. h2's should receive 0 blocked
+ errors. Instead it receives 2.
+
+ * storage/indexeddb/resources/setversion-blocked.js: Removed.
+ Tests the same thing as set_version_blocked.
+
+ * storage/indexeddb/resources/setversion-not-blocked.js:
+ Now h2 is the version change connection and h1 is the blocker.
+
+ * storage/indexeddb/setversion-blocked-by-versionchange-close-in-blocked.html: Removed.
+ * storage/indexeddb/setversion-blocked.html: Removed.
+
+2012-11-19 David Grogan <[email protected]>
+
IndexedDB: convert delete-closed-database-object to upgradeneeded
https://bugs.webkit.org/show_bug.cgi?id=102458
Deleted: trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked-by-versionchange-close-in-blocked.js (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked-by-versionchange-close-in-blocked.js 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked-by-versionchange-close-in-blocked.js 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,84 +0,0 @@
-if (this.importScripts) {
- importScripts('../../../fast/js/resources/js-test-pre.js');
- importScripts('shared.js');
-}
-
-description("Test that open and setVersion are blocked if a VERSION_CHANGE transaction is running, and the connection is closed during the blocked event handler.");
-
-function test() {
- removeVendorPrefixes();
- setDBNameFromPath();
-
- evalAndLog("ver = 1");
- evalAndLog("blockedEventFired = false");
- evalAndLog("versionChangeComplete = false");
- evalAndLog("errorEventFired = false");
-
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
- request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h1OpenOnSuccess(evt) {
- preamble(evt);
- evalAndLog("h1 = event.target.result");
-
- h1._onversionchange_ = function h1OnVersionChange(evt) {
- preamble(evt);
- debug("old = " + JSON.stringify(event.target.version));
- debug("new = " + JSON.stringify(event.version));
- };
-
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
- request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h2OpenOnSuccess(evt) {
- preamble(evt);
- evalAndLog("h2 = event.target.result");
-
- h2._onversionchange_ = function h2OnVersionChange(evt) {
- preamble(evt);
- debug("old = " + JSON.stringify(event.target.version));
- debug("new = " + JSON.stringify(event.version));
- };
-
- request = evalAndLog("h1.setVersion(String(ver++))");
- request._onerror_ = unexpectedErrorCallback;
- request._onblocked_ = function h1SetVersionOnBlocked(evt) {
- preamble(evt);
- evalAndLog("blockedEventFired = true");
- };
- request._onsuccess_ = function h1SetVersionOnSuccess(evt) {
- preamble(evt);
-
- transaction = event.target.result;
- transaction._onabort_ = unexpectedAbortCallback;
- transaction._oncomplete_ = function transactionOnComplete(evt) {
- preamble(evt);
- evalAndLog("versionChangeComplete = true");
- };
- };
-
- request = evalAndLog("h2.setVersion(String(ver++))");
- request._onblocked_ = function h2SetVersionOnBlocked(evt) {
- preamble(evt);
- evalAndLog("h2.close()");
-
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
- request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h3OpenOnSuccess(evt) {
- preamble(event);
- shouldBeTrue("blockedEventFired");
- shouldBeTrue("versionChangeComplete");
- shouldBeTrue("errorEventFired");
- finishJSTest();
- };
- };
- request._onerror_ = function h2SetVersionOnError(evt) {
- preamble(evt);
- evalAndLog("errorEventFired = true");
- };
- };
- };
-}
-
-test();
Modified: trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked-by-versionchange-close.js (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked-by-versionchange-close.js 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked-by-versionchange-close.js 2012-11-20 02:02:26 UTC (rev 135223)
@@ -3,65 +3,72 @@
importScripts('shared.js');
}
-description("Test open and setVersion are blocked if a VERSION_CHANGE transaction is running, and connection closes.");
-
-function test() {
- removeVendorPrefixes();
- setDBNameFromPath();
-
- evalAndLog("ver = 1");
+description("h2 shouldn't receive any blocked events, and h3 should open after h2 is open");
+indexedDBTest(prepareDatabase, openAnother);
+function prepareDatabase()
+{
evalAndLog("blockedEventFired = false");
evalAndLog("versionChangeComplete = false");
+ evalAndLog("h2Opened = false");
+}
+function openAnother(evt)
+{
+ preamble(evt);
+ evalAndLog("h1 = event.target.result");
+ h1._onversionchange_ = unexpectedVersionChangeCallback;
+ request = evalAndLog("indexedDB.open(dbname, 2)");
+ request._onblocked_ = h2Blocked;
+ request._onerror_ = unexpectedErrorCallback;
+ request._onupgradeneeded_ = h2UpgradeNeeded;
+ request._onsuccess_ = h2Success;
+
request = evalAndLog("indexedDB.open(dbname)");
request._onblocked_ = unexpectedBlockedCallback;
request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h1OpenOnSuccess(evt) {
- preamble(evt);
- evalAndLog("h1 = event.target.result");
+ request._onupgradeneeded_ = unexpectedUpgradeNeededCallback;
+ request._onsuccess_ = h3Success;
+ evalAndLog("h1.close()");
+}
- h1._onversionchange_ = unexpectedVersionChangeCallback;
+function h2Blocked(evt)
+{
+ // In multi-process ports h2 can erroneously get a blocked event after
+ // finishJSTest is called, which adds extra output and causes the test to
+ // fail.
+ if (blockedEventFired)
+ return;
+ preamble(evt);
+ evalAndLog("blockedEventFired = true");
+}
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
- request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h2OpenOnSuccess(evt) {
- preamble(evt);
- evalAndLog("h2 = event.target.result");
+function h2UpgradeNeeded(evt)
+{
+ preamble(evt);
+ evalAndLog("h2 = event.target.result");
+ h2._onversionchange_ = unexpectedVersionChangeCallback;
+ transaction = event.target.transaction;
+ transaction._onabort_ = unexpectedAbortCallback;
+ transaction._oncomplete_ = function transactionOnComplete(evt) {
+ preamble(evt);
+ evalAndLog("versionChangeComplete = true");
+ };
+}
- h2._onversionchange_ = unexpectedVersionChangeCallback;
+function h2Success(evt)
+{
+ preamble(evt);
+ evalAndLog("h2Opened = true");
+};
- request = evalAndLog("h1.setVersion(String(ver++))");
- request._onerror_ = unexpectedErrorCallback;
- request._onblocked_ = function h1SetVersionOnBlocked(evt) {
- preamble(evt);
- evalAndLog("blockedEventFired = true");
- };
- request._onsuccess_ = function h1SetVersionOnSuccess(evt) {
- preamble(evt);
-
- transaction = event.target.result;
- transaction._onabort_ = unexpectedAbortCallback;
- transaction._oncomplete_ = function transactionOnComplete(evt) {
- preamble(evt);
- evalAndLog("versionChangeComplete = true");
- };
- };
-
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
- request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h3OpenOnSuccess(evt) {
- preamble(evt);
- debug("FIXME: blocked should not fire as connection was closed. http://webkit.org/b/71130");
- shouldBeFalse("blockedEventFired");
- shouldBeTrue("versionChangeComplete");
- finishJSTest();
- };
-
- evalAndLog("h2.close()");
- };
- };
+function h3Success(evt)
+{
+ preamble(evt);
+ evalAndLog("h3 = event.target.result");
+ shouldBe("h3.version", "2");
+ debug("FIXME: blocked should not fire as connection was closed. http://webkit.org/b/71130");
+ shouldBeFalse("blockedEventFired");
+ shouldBeTrue("versionChangeComplete");
+ shouldBeTrue("h2Opened");
+ finishJSTest();
}
-
-test();
Deleted: trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked.js (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked.js 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/resources/setversion-blocked.js 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,59 +0,0 @@
-if (this.importScripts) {
- importScripts('../../../fast/js/resources/js-test-pre.js');
- importScripts('shared.js');
-}
-
-description("Test that setVersion is blocked on open connections.");
-
-function test() {
- removeVendorPrefixes();
- setDBNameFromPath();
-
- evalAndLog("ver = 1");
- evalAndLog("blockedEventFired = false");
-
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
- request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h1OpenOnSuccess(evt) {
- preamble(evt);
- evalAndLog("h1 = event.target.result");
-
- h1._onversionchange_ = unexpectedVersionChangeCallback;
-
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
- request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h2OpenOnSuccess(evt) {
- preamble(evt);
-
- evalAndLog("h2 = event.target.result");
- h2._onversionchange_ = function h2OnVersionChange(evt) {
- preamble(evt);
- debug("old = " + JSON.stringify(event.target.version));
- debug("new = " + JSON.stringify(event.version));
- };
-
- request = evalAndLog("h1.setVersion(String(ver++))");
- request._onerror_ = unexpectedErrorCallback;
- request._onblocked_ = function h1SetVersionOnBlocked(evt) {
- preamble(evt);
- evalAndLog("blockedEventFired = true");
- evalAndLog("h2.close()");
- };
- request._onsuccess_ = function h1SetVersionOnSuccess(evt) {
- preamble(evt);
-
- transaction = event.target.result;
- transaction._onabort_ = unexpectedAbortCallback;
- transaction._oncomplete_ = function transactionOnComplete(evt) {
- preamble(evt);
- shouldBeTrue("blockedEventFired");
- finishJSTest();
- };
- };
- };
- };
-}
-
-test();
Modified: trunk/LayoutTests/storage/indexeddb/resources/setversion-not-blocked.js (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/resources/setversion-not-blocked.js 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/resources/setversion-not-blocked.js 2012-11-20 02:02:26 UTC (rev 135223)
@@ -5,57 +5,45 @@
description("Test that setVersion is not blocked if handle closed in versionchange handler.");
-function test() {
- removeVendorPrefixes();
- setDBNameFromPath();
+indexedDBTest(prepareDatabase, onOpen);
+evalAndLog("blockedEventFired = false");
+evalAndLog("versionchangeEventFired = false");
+function prepareDatabase(evt)
+{
+ preamble(evt);
+ evalAndLog("h1 = event.target.result");
+ evalAndLog("h1._onversionchange_ = h1OnVersionChange");
+}
- evalAndLog("ver = 1");
- evalAndLog("blockedEventFired = false");
+function h1OnVersionChange(evt)
+{
+ preamble(evt);
+ evalAndLog("versionchangeEventFired = true");
+ shouldBe("event.oldVersion", "1");
+ shouldBe("event.newVersion", "2");
+ evalAndLog("h1.close()");
+}
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
+function onOpen(evt)
+{
+ request = evalAndLog("indexedDB.open(dbname, 2)");
request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h1OpenOnSuccess(evt) {
+ request._onblocked_ = function h2OpenBlocked(evt) {
preamble(evt);
- evalAndLog("h1 = event.target.result");
-
- h1._onversionchange_ = unexpectedVersionChangeCallback;
-
- request = evalAndLog("indexedDB.open(dbname)");
- request._onblocked_ = unexpectedBlockedCallback;
- request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = function h1OpenOnSuccess(evt) {
- preamble(evt);
- evalAndLog("h2 = event.target.result");
-
- h2._onversionchange_ = function h2OnVersionChange(evt) {
- preamble(evt);
- debug("old = " + JSON.stringify(event.target.version));
- debug("new = " + JSON.stringify(event.version));
-
- evalAndLog("h2.close()");
- };
-
- request = evalAndLog("h1.setVersion(String(ver++))");
- request._onerror_ = unexpectedErrorCallback;
- request._onblocked_ = function h1SetVersionOnBlocked(evt) {
- preamble(evt);
- evalAndLog("blockedEventFired = true");
- };
- request._onsuccess_ = function h1SetVersionOnSuccess(evt) {
- preamble(evt);
-
- transaction = event.target.result;
- transaction._onabort_ = unexpectedAbortCallback;
- transaction._oncomplete_ = function transactionOnComplete(evt) {
- preamble(evt);
- debug("FIXME: blocked should not have fired since connection closed; http://webkit.org/b/71130");
- shouldBeFalse("blockedEventFired");
- finishJSTest();
- };
- };
- };
+ shouldBe("event.oldVersion", "1");
+ shouldBe("event.newVersion", "2");
+ evalAndLog("blockedEventFired = true");
};
+ request._onupgradeneeded_ = function h2UpgradeNeeded(evt) {
+ preamble(evt);
+ shouldBe("event.oldVersion", "1");
+ shouldBe("event.newVersion", "2");
+ };
+ request._onsuccess_ = function h2OpenSuccess(evt) {
+ preamble(evt);
+ shouldBeTrue("versionchangeEventFired");
+ debug("FIXME: blocked should not have fired since connection closed; http://webkit.org/b/71130");
+ shouldBeFalse("blockedEventFired");
+ finishJSTest();
+ };
}
-
-test();
Modified: trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-expected.txt (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-expected.txt 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-expected.txt 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,5 +1,4 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
-Test open and setVersion are blocked if a VERSION_CHANGE transaction is running, and connection closes.
+h2 shouldn't receive any blocked events, and h3 should open after h2 is open
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -7,33 +6,28 @@
indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
dbname = "setversion-blocked-by-versionchange-close.html"
-ver = 1
+indexedDB.deleteDatabase(dbname)
+indexedDB.open(dbname)
blockedEventFired = false
versionChangeComplete = false
-indexedDB.open(dbname)
+h2Opened = false
-h1OpenOnSuccess():
+openAnother():
h1 = event.target.result
+indexedDB.open(dbname, 2)
indexedDB.open(dbname)
+h1.close()
-h2OpenOnSuccess():
-h2 = event.target.result
-h1.setVersion(String(ver++))
-indexedDB.open(dbname)
-h2.close()
-
-h1SetVersionOnBlocked():
+h2Blocked():
blockedEventFired = true
-h1SetVersionOnSuccess():
-
-transactionOnComplete():
-versionChangeComplete = true
-
-h3OpenOnSuccess():
+h3Success():
+h3 = event.target.result
+FAIL h3.version should be 2. Was 1.
FIXME: blocked should not fire as connection was closed. http://webkit.org/b/71130
FAIL blockedEventFired should be false. Was true.
-PASS versionChangeComplete is true
+FAIL versionChangeComplete should be true. Was false.
+FAIL h2Opened should be true. Was false.
PASS successfullyParsed is true
TEST COMPLETE
Deleted: trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-in-blocked-expected.txt (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-in-blocked-expected.txt 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-in-blocked-expected.txt 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,56 +0,0 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
-Test that open and setVersion are blocked if a VERSION_CHANGE transaction is running, and the connection is closed during the blocked event handler.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
-
-dbname = "setversion-blocked-by-versionchange-close-in-blocked.html"
-ver = 1
-blockedEventFired = false
-versionChangeComplete = false
-errorEventFired = false
-indexedDB.open(dbname)
-
-h1OpenOnSuccess():
-h1 = event.target.result
-indexedDB.open(dbname)
-
-h2OpenOnSuccess():
-h2 = event.target.result
-h1.setVersion(String(ver++))
-h2.setVersion(String(ver++))
-
-h2OnVersionChange():
-old = 1
-new = "1"
-
-h1SetVersionOnBlocked():
-blockedEventFired = true
-
-h1OnVersionChange():
-old = 1
-new = "2"
-
-h2SetVersionOnBlocked():
-h2.close()
-indexedDB.open(dbname)
-
-h2SetVersionOnError():
-errorEventFired = true
-
-h1SetVersionOnSuccess():
-
-transactionOnComplete():
-versionChangeComplete = true
-
-h3OpenOnSuccess():
-PASS blockedEventFired is true
-PASS versionChangeComplete is true
-PASS errorEventFired is true
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-in-blocked.html (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-in-blocked.html 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/setversion-blocked-by-versionchange-close-in-blocked.html 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,10 +0,0 @@
-<html>
-<head>
-<script src=""
-<script src=""
-</head>
-<body>
-<script src=""
-<script src=""
-</body>
-</html>
Deleted: trunk/LayoutTests/storage/indexeddb/setversion-blocked-expected.txt (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/setversion-blocked-expected.txt 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/setversion-blocked-expected.txt 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,37 +0,0 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
-Test that setVersion is blocked on open connections.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
-
-dbname = "setversion-blocked.html"
-ver = 1
-blockedEventFired = false
-indexedDB.open(dbname)
-
-h1OpenOnSuccess():
-h1 = event.target.result
-indexedDB.open(dbname)
-
-h2OpenOnSuccess():
-h2 = event.target.result
-h1.setVersion(String(ver++))
-
-h2OnVersionChange():
-old = 1
-new = "1"
-
-h1SetVersionOnBlocked():
-blockedEventFired = true
-h2.close()
-
-h1SetVersionOnSuccess():
-
-transactionOnComplete():
-PASS blockedEventFired is true
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/storage/indexeddb/setversion-blocked.html (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/setversion-blocked.html 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/setversion-blocked.html 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,10 +0,0 @@
-<html>
-<head>
-<script src=""
-<script src=""
-</head>
-<body>
-<script src=""
-<script src=""
-</body>
-</html>
Modified: trunk/LayoutTests/storage/indexeddb/setversion-not-blocked-expected.txt (135222 => 135223)
--- trunk/LayoutTests/storage/indexeddb/setversion-not-blocked-expected.txt 2012-11-20 01:58:40 UTC (rev 135222)
+++ trunk/LayoutTests/storage/indexeddb/setversion-not-blocked-expected.txt 2012-11-20 02:02:26 UTC (rev 135223)
@@ -1,4 +1,3 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
Test that setVersion is not blocked if handle closed in versionchange handler.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -7,29 +6,33 @@
indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
dbname = "setversion-not-blocked.html"
-ver = 1
+indexedDB.deleteDatabase(dbname)
blockedEventFired = false
+versionchangeEventFired = false
indexedDB.open(dbname)
-h1OpenOnSuccess():
+prepareDatabase():
h1 = event.target.result
-indexedDB.open(dbname)
+h1._onversionchange_ = h1OnVersionChange
+indexedDB.open(dbname, 2)
-h1OpenOnSuccess():
-h2 = event.target.result
-h1.setVersion(String(ver++))
+h1OnVersionChange():
+versionchangeEventFired = true
+PASS event.oldVersion is 1
+PASS event.newVersion is 2
+h1.close()
-h2OnVersionChange():
-old = 1
-new = "1"
-h2.close()
-
-h1SetVersionOnBlocked():
+h2OpenBlocked():
+PASS event.oldVersion is 1
+PASS event.newVersion is 2
blockedEventFired = true
-h1SetVersionOnSuccess():
+h2UpgradeNeeded():
+PASS event.oldVersion is 1
+PASS event.newVersion is 2
-transactionOnComplete():
+h2OpenSuccess():
+PASS versionchangeEventFired is true
FIXME: blocked should not have fired since connection closed; http://webkit.org/b/71130
FAIL blockedEventFired should be false. Was true.
PASS successfullyParsed is true