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

Side by Side Diff: LayoutTests/storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js

Issue 243523003: Fire window.onerror for uncaught IndexedDB errors (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Remove FIXMEs Created 6 years, 6 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
1 if (this.importScripts) { 1 if (this.importScripts) {
2 importScripts('../../../resources/js-test.js'); 2 importScripts('../../../resources/js-test.js');
3 importScripts('shared.js'); 3 importScripts('shared.js');
4 } 4 }
5 5
6 description("Test that a deleteDatabase called while handling an upgradeneeded e vent is queued and fires its events at the right time. The close() call to unblo ck the delete occurs in the connection's 'versionchange' event handler."); 6 description("Test that a deleteDatabase called while handling an upgradeneeded e vent is queued and fires its events at the right time. The close() call to unblo ck the delete occurs in the connection's 'versionchange' event handler.");
7 7
8 function test() 8 function test()
9 { 9 {
10 removeVendorPrefixes(); 10 removeVendorPrefixes();
11 setDBNameFromPath(); 11 setDBNameFromPath();
12 12
13 request = evalAndLog("indexedDB.deleteDatabase(dbname)"); 13 request = evalAndLog("indexedDB.deleteDatabase(dbname)");
14 request.onsuccess = initiallyDeleted; 14 request.onsuccess = initiallyDeleted;
15 request.onerror = unexpectedErrorCallback; 15 request.onerror = unexpectedErrorCallback;
16 } 16 }
17 17
18 var sawUpgradeNeeded = false; 18 var sawUpgradeNeeded = false;
19 var sawVersionChange = false; 19 var sawVersionChange = false;
20 var sawDeleteBlocked = false; 20 var sawDeleteBlocked = false;
21 var sawOpenError = false;
21 22
22 function initiallyDeleted(evt) { 23 function initiallyDeleted(evt) {
23 preamble(evt); 24 preamble(evt);
24 evalAndLog("request = indexedDB.open(dbname, 1)"); 25 evalAndLog("request = indexedDB.open(dbname, 1)");
25 request.onupgradeneeded = upgradeNeededCallback; 26 request.onupgradeneeded = upgradeNeededCallback;
26 request.onsuccess = unexpectedSuccessCallback; 27 request.onsuccess = unexpectedSuccessCallback;
28 request.onerror = openError;
29 }
30
31 function openError(evt) {
32 preamble(evt);
33 shouldBeTrue("sawVersionChange");
34 evalAndLog("sawOpenError = true");
35 evt.preventDefault();
27 } 36 }
28 37
29 function upgradeNeededCallback(evt) 38 function upgradeNeededCallback(evt)
30 { 39 {
31 preamble(evt); 40 preamble(evt);
32 shouldBeFalse("sawUpgradeNeeded"); 41 shouldBeFalse("sawUpgradeNeeded");
33 evalAndLog("sawUpgradeNeeded = true"); 42 evalAndLog("sawUpgradeNeeded = true");
34 shouldBe("event.oldVersion", "0"); 43 shouldBe("event.oldVersion", "0");
35 shouldBe("event.newVersion", "1"); 44 shouldBe("event.newVersion", "1");
36 45
(...skipping 18 matching lines...) Expand all
55 function deleteBlockedCallback(evt) 64 function deleteBlockedCallback(evt)
56 { 65 {
57 preamble(evt); 66 preamble(evt);
58 shouldBeTrue("sawVersionChange"); 67 shouldBeTrue("sawVersionChange");
59 evalAndLog("sawDeleteBlocked = true"); 68 evalAndLog("sawDeleteBlocked = true");
60 } 69 }
61 70
62 function deleteSuccessCallback(evt) 71 function deleteSuccessCallback(evt)
63 { 72 {
64 preamble(evt); 73 preamble(evt);
65 shouldBeTrue("sawVersionChange"); 74 shouldBeTrue("sawOpenError");
66 debug("FIXME: Blocked events shouldn't fire if connections close in versionc hange handler. http://crbug.com/100123"); 75 debug("FIXME: Blocked events shouldn't fire if connections close in versionc hange handler. http://crbug.com/100123");
67 shouldBeFalse("sawDeleteBlocked"); 76 shouldBeFalse("sawDeleteBlocked");
68 shouldBeTrue("sawUpgradeNeeded"); 77 shouldBeTrue("sawUpgradeNeeded");
69 finishJSTest(); 78 finishJSTest();
70 } 79 }
71 80
72 test(); 81 test();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698