Title: [102260] trunk/LayoutTests
- Revision
- 102260
- Author
- [email protected]
- Date
- 2011-12-07 11:45:58 -0800 (Wed, 07 Dec 2011)
Log Message
IndexedDB objectStoreNames not updated after aborted transaction
https://bugs.webkit.org/show_bug.cgi?id=58655
Already functional but there wasn't a test with these specifics.
Patch by Joshua Bell <[email protected]> on 2011-12-07
Reviewed by Tony Chang.
* storage/indexeddb/mozilla/versionchange-abort-expected.txt: Added.
* storage/indexeddb/mozilla/versionchange-abort.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (102259 => 102260)
--- trunk/LayoutTests/ChangeLog 2011-12-07 19:34:09 UTC (rev 102259)
+++ trunk/LayoutTests/ChangeLog 2011-12-07 19:45:58 UTC (rev 102260)
@@ -1,3 +1,15 @@
+2011-12-07 Joshua Bell <[email protected]>
+
+ IndexedDB objectStoreNames not updated after aborted transaction
+ https://bugs.webkit.org/show_bug.cgi?id=58655
+
+ Already functional but there wasn't a test with these specifics.
+
+ Reviewed by Tony Chang.
+
+ * storage/indexeddb/mozilla/versionchange-abort-expected.txt: Added.
+ * storage/indexeddb/mozilla/versionchange-abort.html: Added.
+
2011-12-07 Xiaomei Ji <[email protected]>
Turn on move caret by word visually for windows platform.
Added: trunk/LayoutTests/storage/indexeddb/mozilla/versionchange-abort-expected.txt (0 => 102260)
--- trunk/LayoutTests/storage/indexeddb/mozilla/versionchange-abort-expected.txt (rev 0)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/versionchange-abort-expected.txt 2011-12-07 19:45:58 UTC (rev 102260)
@@ -0,0 +1,23 @@
+Test IndexedDB's aborting setVersion
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB;
+PASS indexedDB == null is false
+indexedDB.open(name, description)
+db = event.target.result
+initialVersion = db.version;
+request = db.setVersion('2')
+Deleted all object stores.
+objectStore = db.createObjectStore('foo');
+PASS db.objectStoreNames.length is 1
+index = objectStore.createIndex('bar', 'baz');
+PASS objectStore.indexNames.length is 1
+event.target.transaction.abort();
+PASS db.version is initialVersion
+PASS db.objectStoreNames.length is 0
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: trunk/LayoutTests/storage/indexeddb/mozilla/versionchange-abort.html (0 => 102260)
--- trunk/LayoutTests/storage/indexeddb/mozilla/versionchange-abort.html (rev 0)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/versionchange-abort.html 2011-12-07 19:45:58 UTC (rev 102260)
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<!--
+ original test: http://mxr.mozilla.org/mozilla2.0/source/dom/indexedDB/test/test_setVersion_abort.html
+ license of original test:
+ " Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ "
+-->
+<html>
+<head>
+<script src=""
+<script src=""
+<script src=""
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>
+
+description("Test IndexedDB's aborting setVersion");
+if (window.layoutTestController)
+ layoutTestController.waitUntilDone();
+
+function test()
+{
+ indexedDB = evalAndLog("indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB;");
+ shouldBeFalse("indexedDB == null");
+
+ name = window.location.pathname;
+ description = "My Test Database";
+ request = evalAndLog("indexedDB.open(name, description)");
+ request._onsuccess_ = openSuccess;
+ request._onerror_ = unexpectedErrorCallback;
+}
+
+function openSuccess()
+{
+ db = evalAndLog("db = event.target.result");
+ initialVersion = evalAndLog("initialVersion = db.version;");
+ request = evalAndLog("request = db.setVersion('2')");
+ request._onsuccess_ = cleanDatabase;
+ request._onerror_ = unexpectedErrorCallback;
+}
+
+function cleanDatabase()
+{
+ deleteAllObjectStores(db);
+
+ objectStore = evalAndLog("objectStore = db.createObjectStore('foo');");
+ shouldBe("db.objectStoreNames.length", "1");
+
+ index = evalAndLog("index = objectStore.createIndex('bar', 'baz');");
+ shouldBe("objectStore.indexNames.length", "1");
+
+ event.target.transaction._oncomplete_ = unexpectedSuccessCallback;
+ event.target.transaction._onabort_ = postAbort;
+ evalAndLog("event.target.transaction.abort();");
+}
+
+function postAbort()
+{
+ shouldBe("db.version", "initialVersion");
+ shouldBe("db.objectStoreNames.length", "0");
+
+ done();
+}
+
+test();
+
+</script>
+</body>
+</html>
+
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes