Jest: Jest 16 (et en fait Jest 15 aussi) ne fait pas correctement le test d'intégration de relais mais Jest 14 le fait correctement

Créé le 8 oct. 2016  ·  3Commentaires  ·  Source: facebook/jest

Voulez-vous demander une _fonctionnalité_ ou signaler un _bug_ ?

Un bug.

Quel est le comportement actuel ?

Le test qui échoue sciemment est signalé par Jest 16 comme réussi. Jest 14 échoue correctement au test.

Voici la sortie de Jest 16 (voir la sortie de Jest 14 plus bas):

$ npm test

> @ test /Users/macbook/Documents/work/jest-relay-integration-test
> jest

 PASS  __tests__/Me-test-int.js
 PASS  __tests__/SignIn-test.js

Test Suites: 2 passed, 2 total
Tests:       2 passed, 2 total
Snapshots:   0 total
Time:        9.316s
Ran all test suites.

Si le comportement actuel est un bug, veuillez fournir les étapes à reproduire et si possible un référentiel minimal sur GitHub que nous pouvons npm install et npm test .

Voici le repo pour le repro.

https://github.com/GrigoryPtashko/jest-relay-integration-test

branche master avec jest 16

branche jest14 avec jest 14

Il suffit de le cloner, d'installer npm et vous verrez tout vous-même. Utilisez des branches pour basculer entre les versions de Jest.

Quel est le comportement attendu ?

Le comportement attendu - le test dans la reproduction doit échouer. Parce que c'est un test d'intégration Relay raté.
Voici la sortie correcte de Jest 14 :

$ npm test

> @ test /Users/macbook/Documents/work/jest-relay-integration-test
> jest

Using Jest CLI v14.1.0, jasmine2
 PASS  __tests__/SignIn-test.js (3.062s)
 FAIL  __tests__/Me-test-int.js (4.405s)
● Me › it can make request to /q anyway
  - Expected 'ROLE_ANONYMOUS' to equal 'ROLE_ANONYMOUS_AAA'.
        at AppRoot.render (__tests__/Me-test-int.js:39:61)
        at _combinedTickCallback (internal/process/next_tick.js:67:7)
        at process._tickCallback (internal/process/next_tick.js:98:9)
1 test failed, 1 test passed (2 total in 2 test suites, run time 6.087s)
npm ERR! Test failed.  See above for more details.

Exécutez à nouveau Jest avec --debug et fournissez la configuration complète qu'il imprime.

$ npm --version
3.10.7
$ node --version
v6.3.0
$ ./node_modules/.bin/jest --debug
jest version = 16.0.1
test framework = jasmine2
config = {
  "scriptPreprocessor": "/Users/macbook/Documents/work/jest-relay-integration-test/jestPreprocessor.js",
  "moduleNameMapper": [
    [
      "^.+\\.(scss)$",
      "/Users/macbook/Documents/work/jest-relay-integration-test/src/styleMock.js"
    ]
  ],
  "rootDir": "/Users/macbook/Documents/work/jest-relay-integration-test",
  "name": "-Users-macbook-Documents-work-jest-relay-integration-test",
  "setupFiles": [],
  "testRunner": "/Users/macbook/Documents/work/jest-relay-integration-test/node_modules/jest-jasmine2/build/index.js",
  "automock": false,
  "bail": false,
  "browser": false,
  "cacheDirectory": "/var/folders/cs/dzn14j_s1ns7bqbtb5_3w72c0000gn/T/jest",
  "clearMocks": false,
  "coveragePathIgnorePatterns": [
    "/node_modules/"
  ],
  "coverageReporters": [
    "json",
    "text",
    "lcov",
    "clover"
  ],
  "globals": {},
  "haste": {
    "providesModuleNodeModules": []
  },
  "mocksPattern": "__mocks__",
  "moduleDirectories": [
    "node_modules"
  ],
  "moduleFileExtensions": [
    "js",
    "json",
    "jsx",
    "node"
  ],
  "modulePathIgnorePatterns": [],
  "noStackTrace": false,
  "notify": false,
  "preset": null,
  "preprocessorIgnorePatterns": [
    "/node_modules/"
  ],
  "resetModules": false,
  "testEnvironment": "jest-environment-jsdom",
  "testPathDirs": [
    "/Users/macbook/Documents/work/jest-relay-integration-test"
  ],
  "testPathIgnorePatterns": [
    "/node_modules/"
  ],
  "testRegex": "(/__tests__/.*|\\.(test|spec))\\.jsx?$",
  "testURL": "about:blank",
  "timers": "real",
  "useStderr": false,
  "verbose": null,
  "watch": false,
  "cache": true,
  "watchman": true,
  "testcheckOptions": {
    "times": 100,
    "maxSize": 200
  }
}
 PASS  __tests__/SignIn-test.js
 PASS  __tests__/Me-test-int.js

Test Suites: 2 passed, 2 total
Tests:       2 passed, 2 total
Snapshots:   0 total
Time:        4.587s, estimated 5s
Ran all test suites.

Commentaire le plus utile

@cpojer pouvez-vous jeter un œil à celui-ci ? Je veux vraiment passer à 16 à partir de 14. Mais je ne sais pas comment...

Tous les 3 commentaires

@cpojer pouvez-vous jeter un œil à celui-ci ? Je veux vraiment passer à 16 à partir de 14. Mais je ne sais pas comment...

J'ai une version de travail avec le dernier Jest ici : https://github.com/sibelius/relay-integration-test

comprendre après ce problème : https://github.com/facebook/jest/issues/2071

Pour les futurs chercheurs voici mes 5 centimes. Grâce à @sibelius, je l'ai fait fonctionner avec le dernier Jest et le voici https://github.com/GrigoryPtashko/jest-relay-integration-test.

Cette page vous a été utile?
0 / 5 - 0 notes