Protractor: Não compatível com ts-node 5.0.1

Criado em 17 mar. 2018  ·  3Comentários  ·  Fonte: angular/protractor

usar o transferidor ts-node 5.0.1 irá falhar com:

chunk {inline} inline.bundle.js, inline.bundle.js.map (inline) 3.89 kB [entry] [rendered]
chunk {main} main.bundle.js, main.bundle.js.map (main) 175 kB [initial] [rendered]
chunk {polyfills} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 338 kB [initial] [rendered]
chunk {styles} styles.bundle.js, styles.bundle.js.map (styles) 73.3 kB [initial] [rendered]
chunk {vendor} vendor.bundle.js, vendor.bundle.js.map (vendor) 8.4 MB [initial] [rendered]
(node:17999) [DEP0022] DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead.

webpack: Compiled successfully.
[12:17:53] I/update - chromedriver: file exists /Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/webdriver-manager/selenium/chromedriver_2.37.zip
[12:17:53] I/update - chromedriver: unzipping chromedriver_2.37.zip
[12:17:53] I/update - chromedriver: setting permissions to 0755 for /Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/webdriver-manager/selenium/chromedriver_2.37
[12:17:53] I/update - chromedriver: chromedriver_2.37 up to date

/Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/ts-node/src/index.ts:453
        throw new TSError([formatDiagnostic(result.error, cwd, ts, 0)])
              ^
TSError: ⨯ Unable to compile TypeScript
The specified path does not exist: '/Users/et2448/projects/tac/jfr/tac-jfr-js-client/e2e'. (5058)
    at readConfig (/Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/ts-node/src/index.ts:453:15)
    at Object.register (/Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/ts-node/src/index.ts:209:18)
    at beforeLaunch (/Users/et2448/projects/tac/jfr/tac-jfr-js-client/protractor.conf.js:32:24)
    at q_1.Promise (/Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/protractor/built/util.js:46:49)
    at Function.promise (/Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/protractor/node_modules/q/q.js:682:9)
    at Object.runFilenameOrFn_ (/Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/protractor/built/util.js:38:16)
    at Object.initFn [as init] (/Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/protractor/built/launcher.js:104:12)
    at promise.then (/Users/et2448/projects/tac/jfr/tac-jfr-js-client/node_modules/@angular/cli/tasks/e2e.js:89:58)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:118:7)
error An unexpected error occurred: "Command failed.
Exit code: 1
Command: sh
Arguments: -c ng e2e
Directory: /Users/et2448/projects/tac/jfr/tac-jfr-js-client
Output:
".

Ele dirá que / Users / et2448 / projects / tac / jfr / tac-jfr-js-client / e2e não existe, mas existe:

ls -ld /Users/et2448/projects/tac/jfr/tac-jfr-js-client/e2e
drwxr-xr-x  5 et2448  staff  160 Mar 12 19:16 /Users/et2448/projects/tac/jfr/tac-jfr-js-client/e2e
Davids-Work-MacBook-Pro:tac-jfr-js-client et2448$ 

Comentários muito úteis

Tive o mesmo problema, usando

...
require('ts-node').register({
    project: 'e2e/tsconfig.json'
});
...

em protractor.conf.js vez de

...
require('ts-node').register({
    project: 'e2e'
});
...

resolveu para mim.

Todos 3 comentários

mesmo problema

Tive o mesmo problema, usando

...
require('ts-node').register({
    project: 'e2e/tsconfig.json'
});
...

em protractor.conf.js vez de

...
require('ts-node').register({
    project: 'e2e'
});
...

resolveu para mim.

Confirmando, se você criar um novo projeto _Angular 7_ com ng new o arquivo protractor.conf.js tem o seguinte:

exports.config = {
  ...
  onPrepare() {
    require('ts-node').register({
      project: require('path').join(__dirname, './tsconfig.e2e.json')
    });
  ...
Esta página foi útil?
0 / 5 - 0 avaliações