Index: LayoutTests/http/tests/inspector/indexeddb/transaction-promise-console.html |
diff --git a/LayoutTests/http/tests/inspector/indexeddb/transaction-promise-console.html b/LayoutTests/http/tests/inspector/indexeddb/transaction-promise-console.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c2d41a0bfd5aa6685b8122cc3cdbee12afcc4a7d |
--- /dev/null |
+++ b/LayoutTests/http/tests/inspector/indexeddb/transaction-promise-console.html |
@@ -0,0 +1,41 @@ |
+<html> |
+<head> |
+<script src="../inspector-test.js"></script> |
+<script> |
+function test() |
+{ |
+ testRunner.waitUntilDone(); |
+ testRunner.showWebInspector(); |
+ WebInspector.inspectorView.showPanel("console"); |
+ |
+ var dbname = location.href; |
+ indexedDB.deleteDatabase(dbname).onsuccess = function() { |
+ |
+ var openRequest = indexedDB.open(dbname); |
+ openRequest.onupgradeneeded = function() { |
+ openRequest.result.createObjectStore('store'); |
+ }; |
+ openRequest.onsuccess = function(event) { |
+ var db = event.target.result; |
+ Promise.resolve().then(function() { |
+ tx = db.transaction('store'); |
+ InspectorTest.evaluateInConsole("1 + 2"); |
+ try { |
+ tx.objectStore('store').get(0); |
+ InspectorTest.addResult("PASS: Transaction is still active"); |
+ } catch (ex) { |
+ InspectorTest.addResult("FAIL: " + ex.message); |
+ } finally { |
+ InspectorTest.completeTest(); |
+ } |
+ }); |
+ }; |
+ }; |
+} |
+ |
+</script> |
+</head> |
+<body onload="runTest()"> |
+<p>Ensure transactions created within Promise callbacks are not deactivated due to console activity</p> |
+</body> |
+</html> |