dart-lang / dart-lang/test

Support --pause-on-error in Chrome and PhantomJS

Open
#299 2 comments 1 reaction 0 assignees View on GitHub
type-enhancement
Dominant language
Dart
Stars
536
Forks
232
Avg merge
1d 10h
Merged PRs (30d)
10

Description

This is a very useful flag for debugging. With #294 and #296 it isn't strictly necessary, since the user can just set it manually via the dev tools, but it's much easier to set it via the command-line.

This will require starting and connecting to the Chrome dev tools and sending [`Debugger.setPauseOnExceptions`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setPauseOnExceptions) before we begin loading or running tests. I'm reasonably sure that PhantomJS uses a similar protocol, since it's WebKit based and its remote debugger is Chrome-compatible, but we'll have to make sure.

It's also possible that this could work with IE using the [IE Diagnostics Adapter](https://github.com/Microsoft/IEDiagnosticsAdapter/).

Contributor guide

Open the contributing guide

Research direction

No files or tests are named. Start by tracing command-line flag handling and the Chrome and PhantomJS remote-debugger connection, then verify how Debugger.setPauseOnExceptions can be sent before tests load or run. Done means --pause-on-error works in Chrome and PhantomJS, with PhantomJS protocol compatibility confirmed.

Written by the indexing model from the issue text.

Assessment

Tech stack
dart
Domain
cli, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.