angular/blocking-proxy

when calling protractor with --webDriverLogDir flag, throws an error

Opened this issue · 2 comments

example

package.json

dependencies: typescript, ts-node, protractor@5.1.0

conf.js

exports.config = {
  seleniumAddress: 'http://127.0.0.1:4444/wd/hub',
  specs: [ 'spec.ts' ],
  beforeLaunch: () => {
    require('ts-node').register({
      project: '.'
    });
  }
};

spec.ts (test fails to launch)

var env = {};
env.url = 'https://angular.github.io/protractor-cookbook/ng1/calculator/';

describe('slow calculator', () => {
  beforeEach(() => {
    browser.get(env.url + '/ng1/calculator/');
  });

  it('should add numbers', () => {
    element(by.model('first')).sendKeys('4');
    element(by.model('second')).sendKeys('5');
    element(by.id('gobutton')).click();

    expect(element(by.binding('latest')).getText()).toEqual('9');
  });
});

log

> protractor config.js --webDriverLogDir

[13:40:41] I/launcher - Running 1 instances of WebDriver
[13:40:41] I/hosted - Using the selenium server at http://127.0.0.1:4444/wd/hub
[13:40:41] I/BlockingProxy - Starting BlockingProxy with args: --fork,--seleniumAddress,http://127.0.0.1:4444/wd/hub,--logDir,true
[13:40:41] I/protractor - Starting BP client for http://localhost:63196
[13:40:41] E/BlockingProxy - events.js:160
      throw er; // Unhandled 'error' event
      ^

Error: ENOENT: no such file or directory, open 'true/webdriver_log_3pzifwat.txt'
    at Error (native)
[13:40:41] E/BlockingProxy - Exited with 1
[13:40:41] E/BlockingProxy - signal null
[13:40:41] E/launcher - Error code: 135
[13:40:41] E/launcher - Error message: ECONNREFUSED connect ECONNREFUSED 127.0.0.1:63196
[13:40:41] E/launcher - Error: ECONNREFUSED connect ECONNREFUSED 127.0.0.1:63196
    at ClientRequest.<anonymous> (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/selenium-webdriver/http/index.js:238:15)
    at emitOne (events.js:96:13)
    at ClientRequest.emit (events.js:188:7)
    at Socket.socketErrorListener (_http_client.js:310:9)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at emitErrorNT (net.js:1278:8)
    at _combinedTickCallback (internal/process/next_tick.js:74:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)
From: Task: WebDriver.createSession()
    at Function.createSession (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/selenium-webdriver/lib/webdriver.js:777:24)
    at Function.createSession (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/selenium-webdriver/chrome.js:709:29)
    at createDriver (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/selenium-webdriver/index.js:167:33)
    at Builder.build (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/selenium-webdriver/index.js:623:16)
    at Hosted.getNewDriver (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/protractor/lib/driverProviders/driverProvider.ts:60:29)
    at Runner.createBrowser (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/protractor/lib/runner.ts:225:39)
    at q.then.then (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/protractor/lib/runner.ts:391:27)
    at _fulfilled (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/q/q.js:834:54)
    at self.promiseDispatch.done (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/q/q.js:863:30)
    at Promise.promise.promiseDispatch (/Users/cnishina/src/protractor-cookbook/protractor-blockingproxy/node_modules/q/q.js:796:13)
[13:40:41] E/launcher - Process exited with error code 135

npm ERR! Darwin 16.3.0
npm ERR! argv "/Users/cnishina/.nvm/versions/node/v6.9.4/bin/node" "/Users/cnishina/.nvm/versions/node/v6.9.4/bin/npm" "run" "logs"
npm ERR! node v6.9.4
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! protractor-blockingproxy@1.0.0 logs: `protractor config.js --webDriverLogDir`
npm ERR! Exit status 135
npm ERR!
npm ERR! Failed at the protractor-blockingproxy@1.0.0 logs script 'protractor config.js --webDriverLogDir'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the protractor-blockingproxy package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     protractor config.js --webDriverLogDir
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs protractor-blockingproxy
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls protractor-blockingproxy
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
wncm commented
Error: ENOENT: no such file or directory, open 'true/webdriver_log_3pzifwat.txt'

Should work fine if used as a parameter (not a flag): --webDriverLogDir ./ instead of --webDriverLogDir.

Though I think that it would be a lot better if in this case (if path isn't provided) blocking proxy would either throw an error or use ./ as a default value.