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

Unified Diff: test/mjsunit/es6/debug-promises/reject-in-constructor.js

Issue 440773004: Trigger exception debug events on Promise reject. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: comments Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: test/mjsunit/es6/debug-promises/reject-in-constructor.js
diff --git a/test/mjsunit/es6/debug-promises-throw-in-constructor.js b/test/mjsunit/es6/debug-promises/reject-in-constructor.js
similarity index 65%
copy from test/mjsunit/es6/debug-promises-throw-in-constructor.js
copy to test/mjsunit/es6/debug-promises/reject-in-constructor.js
index e0ffcf70521b2237aeecf742cb22b17aef521660..a05b3ac5d656967ce31ab0b2dec08ea464e92fec 100644
--- a/test/mjsunit/es6/debug-promises-throw-in-constructor.js
+++ b/test/mjsunit/es6/debug-promises/reject-in-constructor.js
@@ -5,32 +5,25 @@
// Flags: --expose-debug-as debug
// Test debug events when we only listen to uncaught exceptions and
-// an exception is thrown in the the Promise constructor.
+// the Promise is rejected in the Promise constructor.
// We expect an Exception debug event with a promise to be triggered.
Debug = debug.Debug;
-var step = 0;
+var steps = 0;
var exception = null;
function listener(event, exec_state, event_data, data) {
try {
- // Ignore exceptions during startup in stress runs.
- if (step >= 1) return;
if (event == Debug.DebugEvent.Exception) {
- assertEquals(0, step);
+ steps++;
assertEquals("uncaught", event_data.exception().message);
assertTrue(event_data.promise() instanceof Promise);
assertTrue(event_data.uncaught());
// Assert that the debug event is triggered at the throw site.
assertTrue(exec_state.frame(0).sourceLineText().indexOf("// event") > 0);
- step++;
}
} catch (e) {
- // Signal a failure with exit code 1. This is necessary since the
- // debugger swallows exceptions and we expect the chained function
- // and this listener to be executed after the main script is finished.
- print("Unexpected exception: " + e + "\n" + e.stack);
exception = e;
}
}
@@ -39,8 +32,8 @@ Debug.setBreakOnUncaughtException();
Debug.setListener(listener);
var p = new Promise(function(resolve, reject) {
- throw new Error("uncaught"); // event
+ reject(new Error("uncaught")); // event
});
-assertEquals(1, step);
+assertEquals(1, steps);
assertNull(exception);
« no previous file with comments | « test/mjsunit/es6/debug-promises/reject-caught-uncaught.js ('k') | test/mjsunit/es6/debug-promises/reject-uncaught-all.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698