Diff
Modified: trunk/LayoutTests/ChangeLog (106391 => 106392)
--- trunk/LayoutTests/ChangeLog 2012-01-31 22:00:10 UTC (rev 106391)
+++ trunk/LayoutTests/ChangeLog 2012-01-31 22:05:31 UTC (rev 106392)
@@ -1,3 +1,23 @@
+2012-01-31 David Grogan <dgro...@chromium.org>
+
+ IndexedDB: refactor basics layout test so that it can be run on workers.
+ https://bugs.webkit.org/show_bug.cgi?id=76683
+
+ Reviewed by Tony Chang.
+
+ * storage/indexeddb/basics-workers-expected.txt: Added.
+ * storage/indexeddb/basics-workers.html: Added.
+ * storage/indexeddb/basics.html:
+ * storage/indexeddb/resources/basics.js: Copied from LayoutTests/storage/indexeddb/basics.html.
+ (test):
+ (openCallback):
+ * storage/indexeddb/resources/idb-worker-common.js: Added.
+ (debug):
+ (finishJSTest):
+ (description):
+ (testPassed):
+ (testFailed):
+
2012-01-31 Eric Seidel <e...@webkit.org>
Rebaseline results after http://trac.webkit.org/changeset/106373
Modified: trunk/LayoutTests/storage/indexeddb/basics-expected.txt (106391 => 106392)
--- trunk/LayoutTests/storage/indexeddb/basics-expected.txt 2012-01-31 22:00:10 UTC (rev 106391)
+++ trunk/LayoutTests/storage/indexeddb/basics-expected.txt 2012-01-31 22:05:31 UTC (rev 106392)
@@ -3,9 +3,9 @@
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-PASS 'webkitIndexedDB' in window is true
+PASS 'webkitIndexedDB' in self is true
PASS webkitIndexedDB == null is false
-PASS 'webkitIDBCursor' in window is true
+PASS 'webkitIDBCursor' in self is true
PASS webkitIDBCursor == null is false
webkitIndexedDB.open('basics')
PASS 'result' in request is true
Added: trunk/LayoutTests/storage/indexeddb/basics-workers-expected.txt (0 => 106392)
--- trunk/LayoutTests/storage/indexeddb/basics-workers-expected.txt (rev 0)
+++ trunk/LayoutTests/storage/indexeddb/basics-workers-expected.txt 2012-01-31 22:05:31 UTC (rev 106392)
@@ -0,0 +1,55 @@
+[Worker] Test IndexedDB's basics.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+Starting worker: resources/basics.js
+PASS [Worker] 'webkitIndexedDB' in self is true
+PASS [Worker] webkitIndexedDB == null is false
+PASS [Worker] 'webkitIDBCursor' in self is true
+PASS [Worker] webkitIDBCursor == null is false
+[Worker] webkitIndexedDB.open('basics')
+PASS [Worker] 'result' in request is true
+[Worker] Expecting exception from request.result
+PASS [Worker] Exception was thrown.
+PASS [Worker] code is webkitIDBDatabaseException.NOT_ALLOWED_ERR
+PASS [Worker] 'errorCode' in request is true
+[Worker] Expecting exception from request.errorCode
+PASS [Worker] Exception was thrown.
+PASS [Worker] code is webkitIDBDatabaseException.NOT_ALLOWED_ERR
+PASS [Worker] 'webkitErrorMessage' in request is true
+[Worker] Expecting exception from request.webkitErrorMessage
+PASS [Worker] Exception was thrown.
+PASS [Worker] code is webkitIDBDatabaseException.NOT_ALLOWED_ERR
+PASS [Worker] 'source' in request is true
+PASS [Worker] request.source is webkitIndexedDB
+PASS [Worker] 'transaction' in request is true
+PASS [Worker] request.transaction is null
+PASS [Worker] 'readyState' in request is true
+PASS [Worker] request.readyState is webkitIDBRequest.LOADING
+PASS [Worker] 'onsuccess' in request is true
+PASS [Worker] request.onsuccess is null
+PASS [Worker] 'onerror' in request is true
+PASS [Worker] request.onerror is null
+PASS [Worker] request.LOADING is 1
+PASS [Worker] request.DONE is 2
+PASS [Worker] 'result' in event.target is true
+PASS [Worker] !!event.target.result is true
+PASS [Worker] 'errorCode' in event.target is true
+PASS [Worker] event.target.errorCode is 0
+PASS [Worker] 'webkitErrorMessage' in event.target is true
+PASS [Worker] event.target.webkitErrorMessage is undefined.
+PASS [Worker] 'source' in event.target is true
+PASS [Worker] request.source is webkitIndexedDB
+PASS [Worker] 'transaction' in event.target is true
+PASS [Worker] event.target.transaction is null
+PASS [Worker] 'readyState' in request is true
+PASS [Worker] event.target.readyState is webkitIDBRequest.DONE
+PASS [Worker] 'onsuccess' in event.target is true
+PASS [Worker] 'onerror' in event.target is true
+PASS [Worker] event.target.LOADING is 1
+PASS [Worker] event.target.DONE is 2
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: trunk/LayoutTests/storage/indexeddb/basics-workers.html (0 => 106392)
--- trunk/LayoutTests/storage/indexeddb/basics-workers.html (rev 0)
+++ trunk/LayoutTests/storage/indexeddb/basics-workers.html 2012-01-31 22:05:31 UTC (rev 106392)
@@ -0,0 +1,13 @@
+<html>
+<head>
+<script src=""
+<script src=""
+<script src=""
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script>startWorker('resources/basics.js');</script>
+<script src=""
+</body>
+</html>
Modified: trunk/LayoutTests/storage/indexeddb/basics.html (106391 => 106392)
--- trunk/LayoutTests/storage/indexeddb/basics.html 2012-01-31 22:00:10 UTC (rev 106391)
+++ trunk/LayoutTests/storage/indexeddb/basics.html 2012-01-31 22:05:31 UTC (rev 106392)
@@ -6,68 +6,7 @@
<body>
<p id="description"></p>
<div id="console"></div>
-<script>
-
-description("Test IndexedDB's basics.");
-if (window.layoutTestController)
- layoutTestController.waitUntilDone();
-
-function test()
-{
- shouldBeTrue("'webkitIndexedDB' in window");
- shouldBeFalse("webkitIndexedDB == null");
-
- shouldBeTrue("'webkitIDBCursor' in window");
- shouldBeFalse("webkitIDBCursor == null");
-
- request = evalAndLog("webkitIndexedDB.open('basics')");
- shouldBeTrue("'result' in request");
- evalAndExpectException("request.result", "webkitIDBDatabaseException.NOT_ALLOWED_ERR");
- shouldBeTrue("'errorCode' in request");
- evalAndExpectException("request.errorCode", "webkitIDBDatabaseException.NOT_ALLOWED_ERR");
- shouldBeTrue("'webkitErrorMessage' in request");
- evalAndExpectException("request.webkitErrorMessage", "webkitIDBDatabaseException.NOT_ALLOWED_ERR");
- shouldBeTrue("'source' in request");
- shouldBe("request.source", "webkitIndexedDB");
- shouldBeTrue("'transaction' in request");
- shouldBeNull("request.transaction");
- shouldBeTrue("'readyState' in request");
- shouldBe("request.readyState", "webkitIDBRequest.LOADING");
- shouldBeTrue("'onsuccess' in request");
- shouldBeNull("request.onsuccess");
- shouldBeTrue("'onerror' in request");
- shouldBeNull("request.onerror");
- shouldBe("request.LOADING", "1");
- shouldBe("request.DONE", "2");
- request._onsuccess_ = openCallback;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function openCallback()
-{
- shouldBeTrue("'result' in event.target");
- shouldBeTrue("!!event.target.result");
- shouldBeTrue("'errorCode' in event.target");
- shouldBe("event.target.errorCode", "0");
- shouldBeTrue("'webkitErrorMessage' in event.target");
- shouldBeUndefined("event.target.webkitErrorMessage");
- shouldBeTrue("'source' in event.target");
- shouldBe("request.source", "webkitIndexedDB");
- shouldBeTrue("'transaction' in event.target");
- shouldBeNull("event.target.transaction");
- shouldBeTrue("'readyState' in request");
- shouldBe("event.target.readyState", "webkitIDBRequest.DONE");
- shouldBeTrue("'onsuccess' in event.target");
- shouldBeTrue("'onerror' in event.target");
- shouldBe("event.target.LOADING", "1");
- shouldBe("event.target.DONE", "2");
-
- done();
-}
-
-test();
-
-
-</script>
+<script src=""
+<script src=""
</body>
</html>
Copied: trunk/LayoutTests/storage/indexeddb/resources/basics.js (from rev 106391, trunk/LayoutTests/storage/indexeddb/basics.html) (0 => 106392)
--- trunk/LayoutTests/storage/indexeddb/resources/basics.js (rev 0)
+++ trunk/LayoutTests/storage/indexeddb/resources/basics.js 2012-01-31 22:05:31 UTC (rev 106392)
@@ -0,0 +1,66 @@
+if (this.importScripts) {
+ // FIXME: Change js-test-pre.js to use self in place of window where
+ // possible, so we can remove the next line. http://webkit.org/b/76762
+ window = self;
+ importScripts('../../../fast/js/resources/js-test-pre.js');
+ importScripts('idb-worker-common.js');
+ importScripts('shared.js');
+}
+
+description("Test IndexedDB's basics.");
+
+function test()
+{
+ shouldBeTrue("'webkitIndexedDB' in self");
+ shouldBeFalse("webkitIndexedDB == null");
+
+ shouldBeTrue("'webkitIDBCursor' in self");
+ shouldBeFalse("webkitIDBCursor == null");
+
+ request = evalAndLog("webkitIndexedDB.open('basics')");
+ shouldBeTrue("'result' in request");
+ evalAndExpectException("request.result", "webkitIDBDatabaseException.NOT_ALLOWED_ERR");
+ shouldBeTrue("'errorCode' in request");
+ evalAndExpectException("request.errorCode", "webkitIDBDatabaseException.NOT_ALLOWED_ERR");
+ shouldBeTrue("'webkitErrorMessage' in request");
+ evalAndExpectException("request.webkitErrorMessage", "webkitIDBDatabaseException.NOT_ALLOWED_ERR");
+ shouldBeTrue("'source' in request");
+ shouldBe("request.source", "webkitIndexedDB");
+ shouldBeTrue("'transaction' in request");
+ shouldBeNull("request.transaction");
+ shouldBeTrue("'readyState' in request");
+ shouldBe("request.readyState", "webkitIDBRequest.LOADING");
+ shouldBeTrue("'onsuccess' in request");
+ shouldBeNull("request.onsuccess");
+ shouldBeTrue("'onerror' in request");
+ shouldBeNull("request.onerror");
+ shouldBe("request.LOADING", "1");
+ shouldBe("request.DONE", "2");
+ request._onsuccess_ = openCallback;
+ request._onerror_ = unexpectedErrorCallback;
+}
+
+function openCallback(evt)
+{
+ event = evt;
+ shouldBeTrue("'result' in event.target");
+ shouldBeTrue("!!event.target.result");
+ shouldBeTrue("'errorCode' in event.target");
+ shouldBe("event.target.errorCode", "0");
+ shouldBeTrue("'webkitErrorMessage' in event.target");
+ shouldBeUndefined("event.target.webkitErrorMessage");
+ shouldBeTrue("'source' in event.target");
+ shouldBe("request.source", "webkitIndexedDB");
+ shouldBeTrue("'transaction' in event.target");
+ shouldBeNull("event.target.transaction");
+ shouldBeTrue("'readyState' in request");
+ shouldBe("event.target.readyState", "webkitIDBRequest.DONE");
+ shouldBeTrue("'onsuccess' in event.target");
+ shouldBeTrue("'onerror' in event.target");
+ shouldBe("event.target.LOADING", "1");
+ shouldBe("event.target.DONE", "2");
+
+ finishJSTest();
+}
+
+test();
Added: trunk/LayoutTests/storage/indexeddb/resources/idb-worker-common.js (0 => 106392)
--- trunk/LayoutTests/storage/indexeddb/resources/idb-worker-common.js (rev 0)
+++ trunk/LayoutTests/storage/indexeddb/resources/idb-worker-common.js 2012-01-31 22:05:31 UTC (rev 106392)
@@ -0,0 +1,24 @@
+function debug(message)
+{
+ postMessage("MESG:" + message);
+}
+
+function finishJSTest()
+{
+ postMessage("DONE:");
+}
+
+function description(message)
+{
+ postMessage('DESC:' + message);
+}
+
+function testPassed(msg)
+{
+ postMessage("PASS:" + msg);
+}
+
+function testFailed(msg)
+{
+ postMessage("FAIL:" + msg);
+}
Modified: trunk/LayoutTests/storage/indexeddb/resources/shared.js (106391 => 106392)
--- trunk/LayoutTests/storage/indexeddb/resources/shared.js 2012-01-31 22:00:10 UTC (rev 106391)
+++ trunk/LayoutTests/storage/indexeddb/resources/shared.js 2012-01-31 22:05:31 UTC (rev 106392)
@@ -1,3 +1,5 @@
+var jsTestIsAsync = true;
+
function done()
{
isSuccessfullyParsed();