Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / storage / indexeddb / resources / deletedatabase-not-blocked.js
1 if (this.importScripts) {
2     importScripts('../../../resources/js-test.js');
3     importScripts('shared.js');
4 }
5
6 description("Test that deleteDatabase is not blocked when connections close in on versionchange callback");
7
8 function test() {
9     removeVendorPrefixes();
10     setDBNameFromPath();
11
12     request = evalAndLog("indexedDB.open(dbname)");
13     request.onblocked = unexpectedBlockedCallback;
14     request.onerror = unexpectedErrorCallback;
15     request.onsuccess = function openOnSuccess(evt) {
16         preamble(evt);
17         evalAndLog("h = event.target.result");
18
19         h.onversionchange = function onVersionChange(evt) {
20             preamble(evt);
21             shouldBe("event.target.version", "1");
22             shouldBe("event.oldVersion", "1");
23             shouldBeNull("event.newVersion");
24             evalAndLog("h.close()");
25         };
26
27         request = evalAndLog("indexedDB.deleteDatabase(dbname)");
28         request.onerror = unexpectedErrorCallback;
29         request.onblocked = unexpectedBlockedCallback;
30         request.onsuccess = function deleteDatabaseOnSuccess(evt) {
31             preamble(evt);
32             testPassed("blocked event was not fired");
33             finishJSTest();
34         };
35     };
36 }
37
38 test();