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

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: Don't capture full stack unless devtools is visible Created 6 years 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 sawOpenError = false;
20 21
21 function initiallyDeleted(evt) { 22 function initiallyDeleted(evt) {
22 preamble(evt); 23 preamble(evt);
23 evalAndLog("request = indexedDB.open(dbname, 1)"); 24 evalAndLog("request = indexedDB.open(dbname, 1)");
24 request.onupgradeneeded = upgradeNeededCallback; 25 request.onupgradeneeded = upgradeNeededCallback;
25 request.onsuccess = unexpectedSuccessCallback; 26 request.onsuccess = unexpectedSuccessCallback;
27 request.onerror = openError;
28 }
29
30 function openError(evt) {
31 preamble(evt);
32 shouldBeTrue("sawVersionChange");
33 evalAndLog("sawOpenError = true");
34 evt.preventDefault();
26 } 35 }
27 36
28 function upgradeNeededCallback(evt) 37 function upgradeNeededCallback(evt)
29 { 38 {
30 preamble(evt); 39 preamble(evt);
31 shouldBeFalse("sawUpgradeNeeded"); 40 shouldBeFalse("sawUpgradeNeeded");
32 evalAndLog("sawUpgradeNeeded = true"); 41 evalAndLog("sawUpgradeNeeded = true");
33 shouldBe("event.oldVersion", "0"); 42 shouldBe("event.oldVersion", "0");
34 shouldBe("event.newVersion", "1"); 43 shouldBe("event.newVersion", "1");
35 44
(...skipping 12 matching lines...) Expand all
48 evalAndLog("sawVersionChange = true"); 57 evalAndLog("sawVersionChange = true");
49 58
50 debug("Closing the connection before the IDBOpenDBRequest's success fires wi ll cause the open to fail."); 59 debug("Closing the connection before the IDBOpenDBRequest's success fires wi ll cause the open to fail.");
51 evalAndLog("db.close()"); 60 evalAndLog("db.close()");
52 } 61 }
53 62
54 function deleteSuccessCallback(evt) 63 function deleteSuccessCallback(evt)
55 { 64 {
56 preamble(evt); 65 preamble(evt);
57 shouldBeTrue("sawVersionChange"); 66 shouldBeTrue("sawVersionChange");
67 shouldBeTrue("sawOpenError");
58 shouldBeTrue("sawUpgradeNeeded"); 68 shouldBeTrue("sawUpgradeNeeded");
59 finishJSTest(); 69 finishJSTest();
60 } 70 }
61 71
62 test(); 72 test();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698