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

Unified Diff: test/mjsunit/es6/debug-stepin-promises.js

Issue 739523002: Allow stepping into Object.observe handlers. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 6 years, 1 month 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
« no previous file with comments | « test/mjsunit/es6/debug-stepin-microtasks.js ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/mjsunit/es6/debug-stepin-promises.js
diff --git a/test/mjsunit/es6/debug-stepin-promises.js b/test/mjsunit/es6/debug-stepin-promises.js
deleted file mode 100644
index 2db6b66946302cab0458c0397c1682667cd2f08e..0000000000000000000000000000000000000000
--- a/test/mjsunit/es6/debug-stepin-promises.js
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright 2014 the V8 project authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Flags: --allow-natives-syntax --expose-debug-as debug
-
-Debug = debug.Debug
-var exception = null;
-var break_count = 0;
-var expected_breaks = 7;
-
-function listener(event, exec_state, event_data, data) {
- try {
- if (event == Debug.DebugEvent.Break) {
- assertTrue(exec_state.frameCount() != 0, "FAIL: Empty stack trace");
- var source = exec_state.frame(0).sourceLineText();
- print("paused at: " + source);
- assertTrue(source.indexOf("// Break " + break_count + ".") > 0,
- "Unexpected pause at: " + source);
- if (source.indexOf("StepOver.") !== -1) {
- exec_state.prepareStep(Debug.StepAction.StepNext, 1);
- } else {
- exec_state.prepareStep(Debug.StepAction.StepIn, 1);
- }
- ++break_count;
- } else if (event == Debug.DebugEvent.AsyncTaskEvent &&
- event_data.type() === "willHandle" &&
- event_data.name() !== "Object.observe" &&
- break_count > 0) {
- exec_state.prepareStep(Debug.StepAction.StepIn, 1);
- }
- } catch (e) {
- exception = e;
- print(e, e.stack);
- }
-};
-
-Debug.setListener(listener);
-
-Promise.resolve(42)
- .then(promise1)
- .then(Object) // Should skip stepping into native.
- .then(Boolean) // Should skip stepping into native.
- .then(promise2)
- .then(undefined, promise3)
- .catch(function(e) {
- %AbortJS("FAIL: uncaught exception " + e);
- });
-
-function promise1()
-{
- debugger; // Break 0.
- return exception || 1; // Break 1.
-} // Break 2.
-
-function promise2()
-{
- throw new Error; // Break 3.
-}
-
-function promise3()
-{
- finalize(); // Break 4. StepOver.
- return break_count; // Break 5.
-} // Break 6.
-
-function finalize()
-{
- var dummy = {};
- Object.observe(dummy, function() {
- if (expected_breaks !== break_count) {
- %AbortJS("FAIL: expected <" + expected_breaks + "> breaks instead of <" +
- break_count + ">");
- }
- if (exception !== null) {
- %AbortJS("FAIL: exception: " + exception);
- }
- });
- dummy.foo = 1;
-}
« no previous file with comments | « test/mjsunit/es6/debug-stepin-microtasks.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698