| Index: third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/indexeddb-worker.js
|
| diff --git a/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/indexeddb-worker.js b/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/indexeddb-worker.js
|
| index ef89550b3e0b26d84df9b0e8f3c00ef8265179cb..d138e54140015a5a52f3a91eec8e8068a2f2c99e 100644
|
| --- a/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/indexeddb-worker.js
|
| +++ b/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/indexeddb-worker.js
|
| @@ -1,26 +1,28 @@
|
| -var port;
|
| self.addEventListener('message', function(e) {
|
| var message = e.data;
|
| if ('port' in message)
|
| - doIndexedDBTest(message.port);
|
| + e.waitUntil(doIndexedDBTest(message.port));
|
| });
|
|
|
| function doIndexedDBTest(port) {
|
| - var delete_request = indexedDB.deleteDatabase('db');
|
| - delete_request.onsuccess = function() {
|
| - var open_request = indexedDB.open('db');
|
| - open_request.onupgradeneeded = function() {
|
| - var db = open_request.result;
|
| - db.createObjectStore('store');
|
| - };
|
| - open_request.onsuccess = function() {
|
| - var db = open_request.result;
|
| - var tx = db.transaction('store', 'readwrite');
|
| - var store = tx.objectStore('store');
|
| - store.put('value', 'key');
|
| - tx.oncomplete = function() {
|
| - port.postMessage('done');
|
| + return new Promise(function(resolve) {
|
| + var delete_request = indexedDB.deleteDatabase('db');
|
| + delete_request.onsuccess = function() {
|
| + var open_request = indexedDB.open('db');
|
| + open_request.onupgradeneeded = function() {
|
| + var db = open_request.result;
|
| + db.createObjectStore('store');
|
| + };
|
| + open_request.onsuccess = function() {
|
| + var db = open_request.result;
|
| + var tx = db.transaction('store', 'readwrite');
|
| + var store = tx.objectStore('store');
|
| + store.put('value', 'key');
|
| + tx.oncomplete = function() {
|
| + port.postMessage('done');
|
| + resolve();
|
| + };
|
| };
|
| };
|
| - };
|
| + });
|
| }
|
|
|