|
1 | 1 | import {BPClient} from 'blocking-proxy'; |
2 | | -import {ActionSequence, By, Capabilities, Command as WdCommand, FileDetector, ICommandName, Navigation, Options, promise as wdpromise, Session, TargetLocator, TouchSequence, until, WebDriver, WebElement, WebElementPromise} from 'selenium-webdriver'; |
| 2 | +import {By, Command as WdCommand, ICommandName, Navigation, promise as wdpromise, Session, WebDriver, WebElement, WebElementPromise} from 'selenium-webdriver'; |
3 | 3 | import * as url from 'url'; |
4 | 4 | import {extend as extendWD, ExtendedWebDriver} from 'webdriver-js-extender'; |
5 | 5 |
|
6 | | -import {DebugHelper} from './debugger'; |
7 | 6 | import {build$, build$$, ElementArrayFinder, ElementFinder} from './element'; |
8 | 7 | import {IError} from './exitCodes'; |
9 | 8 | import {ProtractorExpectedConditions} from './expectedConditions'; |
@@ -315,11 +314,6 @@ export class ProtractorBrowser extends AbstractExtendedWebDriver { |
315 | 314 | */ |
316 | 315 | ng12Hybrid: boolean; |
317 | 316 |
|
318 | | - /** |
319 | | - * A helper that manages debugging tests. |
320 | | - */ |
321 | | - debugHelper: DebugHelper; |
322 | | - |
323 | 317 | // This index type allows looking up methods by name so we can do mixins. |
324 | 318 | [key: string]: any; |
325 | 319 |
|
@@ -364,7 +358,6 @@ export class ProtractorBrowser extends AbstractExtendedWebDriver { |
364 | 358 | this.getPageTimeout = DEFAULT_GET_PAGE_TIMEOUT; |
365 | 359 | this.params = {}; |
366 | 360 | this.resetUrl = DEFAULT_RESET_URL; |
367 | | - this.debugHelper = new DebugHelper(this); |
368 | 361 |
|
369 | 362 | let ng12Hybrid_ = false; |
370 | 363 | Object.defineProperty(this, 'ng12Hybrid', { |
@@ -1078,118 +1071,6 @@ export class ProtractorBrowser extends AbstractExtendedWebDriver { |
1078 | 1071 | clientSideScripts.getLocationAbsUrl, 'Protractor.getLocationAbsUrl()', rootEl)); |
1079 | 1072 | } |
1080 | 1073 |
|
1081 | | - /** |
1082 | | - * Adds a task to the control flow to pause the test and inject helper |
1083 | | - * functions |
1084 | | - * into the browser, so that debugging may be done in the browser console. |
1085 | | - * |
1086 | | - * This should be used under node in debug mode, i.e. with |
1087 | | - * protractor debug <configuration.js> |
1088 | | - * |
1089 | | - * @example |
1090 | | - * While in the debugger, commands can be scheduled through webdriver by |
1091 | | - * entering the repl: |
1092 | | - * debug> repl |
1093 | | - * > element(by.input('user')).sendKeys('Laura'); |
1094 | | - * > browser.debugger(); |
1095 | | - * Press Ctrl + c to leave debug repl |
1096 | | - * debug> c |
1097 | | - * |
1098 | | - * This will run the sendKeys command as the next task, then re-enter the |
1099 | | - * debugger. |
1100 | | - */ |
1101 | | - debugger() { |
1102 | | - // jshint debug: true |
1103 | | - return this.driver.executeScript(clientSideScripts.installInBrowser) |
1104 | | - .then(() => wdpromise.controlFlow().execute(() => { |
1105 | | - debugger; |
1106 | | - }, 'add breakpoint to control flow')); |
1107 | | - } |
1108 | | - |
1109 | | - /** |
1110 | | - * See browser.explore(). |
1111 | | - */ |
1112 | | - enterRepl(opt_debugPort?: number) { |
1113 | | - return this.explore(opt_debugPort); |
1114 | | - } |
1115 | | - |
1116 | | - /** |
1117 | | - * Beta (unstable) explore function for entering the repl loop from |
1118 | | - * any point in the control flow. Use browser.explore() in your test. |
1119 | | - * Does not require changes to the command line (no need to add 'debug'). |
1120 | | - * Note, if you are wrapping your own instance of Protractor, you must |
1121 | | - * expose globals 'browser' and 'protractor' for pause to work. |
1122 | | - * |
1123 | | - * @example |
1124 | | - * element(by.id('foo')).click(); |
1125 | | - * browser.explore(); |
1126 | | - * // Execution will stop before the next click action. |
1127 | | - * element(by.id('bar')).click(); |
1128 | | - * |
1129 | | - * @param {number=} opt_debugPort Optional port to use for the debugging |
1130 | | - * process |
1131 | | - */ |
1132 | | - explore(opt_debugPort?: number) { |
1133 | | - let debuggerClientPath = __dirname + '/debugger/clients/explorer.js'; |
1134 | | - let onStartFn = (firstTime: boolean) => { |
1135 | | - logger.info(); |
1136 | | - if (firstTime) { |
1137 | | - logger.info('------- Element Explorer -------'); |
1138 | | - logger.info( |
1139 | | - 'Starting WebDriver debugger in a child process. Element ' + |
1140 | | - 'Explorer is still beta, please report issues at ' + |
1141 | | - 'github.com/angular/protractor'); |
1142 | | - logger.info(); |
1143 | | - logger.info('Type <tab> to see a list of locator strategies.'); |
1144 | | - logger.info('Use the `list` helper function to find elements by strategy:'); |
1145 | | - logger.info(' e.g., list(by.binding(\'\')) gets all bindings.'); |
1146 | | - logger.info(); |
1147 | | - } |
1148 | | - }; |
1149 | | - this.debugHelper.initBlocking(debuggerClientPath, onStartFn, opt_debugPort); |
1150 | | - } |
1151 | | - |
1152 | | - /** |
1153 | | - * Beta (unstable) pause function for debugging webdriver tests. Use |
1154 | | - * browser.pause() in your test to enter the protractor debugger from that |
1155 | | - * point in the control flow. |
1156 | | - * Does not require changes to the command line (no need to add 'debug'). |
1157 | | - * Note, if you are wrapping your own instance of Protractor, you must |
1158 | | - * expose globals 'browser' and 'protractor' for pause to work. |
1159 | | - * |
1160 | | - * @example |
1161 | | - * element(by.id('foo')).click(); |
1162 | | - * browser.pause(); |
1163 | | - * // Execution will stop before the next click action. |
1164 | | - * element(by.id('bar')).click(); |
1165 | | - * |
1166 | | - * @param {number=} opt_debugPort Optional port to use for the debugging |
1167 | | - * process |
1168 | | - */ |
1169 | | - pause(opt_debugPort?: number): wdpromise.Promise<any> { |
1170 | | - if (this.debugHelper.isAttached()) { |
1171 | | - logger.info('Encountered browser.pause(), but debugger already attached.'); |
1172 | | - return wdpromise.when(true); |
1173 | | - } |
1174 | | - let debuggerClientPath = __dirname + '/debugger/clients/wddebugger.js'; |
1175 | | - let onStartFn = (firstTime: boolean) => { |
1176 | | - logger.info(); |
1177 | | - logger.info('Encountered browser.pause(). Attaching debugger...'); |
1178 | | - if (firstTime) { |
1179 | | - logger.info(); |
1180 | | - logger.info('------- WebDriver Debugger -------'); |
1181 | | - logger.info( |
1182 | | - 'Starting WebDriver debugger in a child process. Pause is ' + |
1183 | | - 'still beta, please report issues at github.com/angular/protractor'); |
1184 | | - logger.info(); |
1185 | | - logger.info('press c to continue to the next webdriver command'); |
1186 | | - logger.info('press ^D to detach debugger and resume code execution'); |
1187 | | - logger.info(); |
1188 | | - } |
1189 | | - }; |
1190 | | - this.debugHelper.init(debuggerClientPath, onStartFn, opt_debugPort); |
1191 | | - } |
1192 | | - |
1193 | 1074 | /** |
1194 | 1075 | * Determine if the control flow is enabled. |
1195 | 1076 | * |
|
0 commit comments