Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(44)

Side by Side Diff: LayoutTests/fast/workers/storage/use-same-database-in-page-and-workers.html

Issue 561093003: Remove worker support of Web SQL Database. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 <html>
2 <head>
3 <script>
4 function finishTest()
5 {
6 if (window.testRunner)
7 testRunner.notifyDone();
8 }
9
10 function log(message)
11 {
12 document.getElementById("console").innerHTML += message + "<br>";
13 }
14
15 function runTest()
16 {
17 if (window.testRunner) {
18 testRunner.dumpAsText();
19 testRunner.waitUntilDone();
20 }
21
22 var db = openDatabase("UseSameDatabaseInPageAndWorkers", "", "", 1);
23 db.transaction(function(tx) {
24 tx.executeSql("CREATE TABLE IF NOT EXISTS Test(Foo INT)", [],
25 function(tx, data) {
26 startWorkers();
27 insertData(db);
28 }, function(tx, error) {
29 log("Creating table Test failed: " + error.message);
30 finishTest();
31 });
32 });
33 }
34
35 var successfulTransactions = 0
36 var WORKER_COUNT = 3;
37 function startWorkers()
38 {
39 var databaseWorkers = new Array(WORKER_COUNT);
40 for (var i = 0; i < WORKER_COUNT; i++) {
41 databaseWorkers[i] = new Worker('resources/use-same-database-in-page-and -workers.js');
42 databaseWorkers[i].onerror = function(event) {
43 log("Caught an error from a worker: " + event.data);
44 finishTest();
45 }
46 databaseWorkers[i].onmessage = function(event) {
47 if (event.data == "transactionSuccessful")
48 successCallback();
49 else
50 log("Unexpected worker message: " + event.data);
51 }
52 }
53 }
54
55 function successCallback()
56 {
57 successfulTransactions++;
58 if (successfulTransactions == 100 * (WORKER_COUNT + 1)) {
59 log("PASS");
60 finishTest();
61 }
62 }
63
64 function errorCallback(error)
65 {
66 log("executeSql failed: " + error.message);
67 finishTest();
68 }
69
70 function insertData(db)
71 {
72 for (var i = 0; i < 100; i++) {
73 db.transaction(function(tx) {
74 tx.executeSql("INSERT INTO Test VALUES (?)", [i], null,
75 function(tx, error) { errorCallback(error); });
76 }, errorCallback, successCallback);
77 }
78 }
79 </script>
80 </head>
81
82 <body onload="runTest()">
83 Test that we can successfully use the same database in the page and in multiple workers at the same time.
84 <pre id="console">
85 </pre>
86 </body>
87
88 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698