From 521cd3a5f7cc7cca7fd2bbf92456ccfb7715acd3 Mon Sep 17 00:00:00 2001 From: Simen Bekkhus Date: Tue, 27 Nov 2018 09:12:11 +0100 Subject: [PATCH] coverage? --- .../coverage_remapping.test.js.snap | 10 +++++----- .../coverage_report.test.js.snap | 20 +++++++++---------- e2e/__tests__/coverage_report.test.js | 11 ++-------- e2e/coverage-report/babel.config.js | 3 +++ e2e/coverage-report/package.json | 1 + .../Preprocessor.js | 5 ++--- .../package.json | 3 +-- e2e/coverage-transform-instrumented/yarn.lock | 18 ----------------- 8 files changed, 24 insertions(+), 47 deletions(-) create mode 100644 e2e/coverage-report/babel.config.js diff --git a/e2e/__tests__/__snapshots__/coverage_remapping.test.js.snap b/e2e/__tests__/__snapshots__/coverage_remapping.test.js.snap index 7285790c0bbf..3faf7a0a5362 100644 --- a/e2e/__tests__/__snapshots__/coverage_remapping.test.js.snap +++ b/e2e/__tests__/__snapshots__/coverage_remapping.test.js.snap @@ -183,7 +183,7 @@ Object { "0": Object { "decl": Object { "end": Object { - "column": 28, + "column": 29, "line": 3, }, "start": Object { @@ -206,7 +206,7 @@ Object { "1": Object { "decl": Object { "end": Object { - "column": 35, + "column": 36, "line": 7, }, "start": Object { @@ -229,7 +229,7 @@ Object { "2": Object { "decl": Object { "end": Object { - "column": 48, + "column": 49, "line": 7, }, "start": Object { @@ -314,7 +314,7 @@ Object { }, "5": Object { "end": Object { - "column": 40, + "column": 43, "line": 7, }, "start": Object { @@ -324,7 +324,7 @@ Object { }, "6": Object { "end": Object { - "column": 53, + "column": 54, "line": 7, }, "start": Object { diff --git a/e2e/__tests__/__snapshots__/coverage_report.test.js.snap b/e2e/__tests__/__snapshots__/coverage_report.test.js.snap index e741fd69db6a..22b2a7a6ba06 100644 --- a/e2e/__tests__/__snapshots__/coverage_report.test.js.snap +++ b/e2e/__tests__/__snapshots__/coverage_report.test.js.snap @@ -46,16 +46,16 @@ exports[`generates coverage when using the testRegex config param 1`] = ` "-------------------------------------|----------|----------|----------|----------|-------------------| File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s | -------------------------------------|----------|----------|----------|----------|-------------------| -All files | 56.52 | 0 | 50 | 55.56 | | - coverage-report | 41.18 | 0 | 25 | 42.86 | | - OtherFile.js | 100 | 100 | 100 | 100 | | - Sum.js | 85.71 | 100 | 50 | 100 | | - SumDependency.js | 0 | 0 | 0 | 0 | 8,10,12 | - notRequiredInTestSuite.js | 0 | 0 | 0 | 0 | 8,15,16,17,19 | - coverage-report/cached-duplicates/a | 100 | 100 | 100 | 100 | | - Identical.js | 100 | 100 | 100 | 100 | | - coverage-report/cached-duplicates/b | 100 | 100 | 100 | 100 | | - Identical.js | 100 | 100 | 100 | 100 | | +All files | 56.52 | 0 | 50 | 55.56 | | + coverage-report | 41.18 | 0 | 25 | 42.86 | | + OtherFile.js | 100 | 100 | 100 | 100 | | + Sum.js | 85.71 | 100 | 50 | 100 | | + SumDependency.js | 0 | 0 | 0 | 0 | 8,10,12 | + notRequiredInTestSuite.js | 0 | 0 | 0 | 0 | 8,15,16,17,19 | + coverage-report/cached-duplicates/a | 100 | 100 | 100 | 100 | | + Identical.js | 100 | 100 | 100 | 100 | | + coverage-report/cached-duplicates/b | 100 | 100 | 100 | 100 | | + Identical.js | 100 | 100 | 100 | 100 | | -------------------------------------|----------|----------|----------|----------|-------------------|" `; diff --git a/e2e/__tests__/coverage_report.test.js b/e2e/__tests__/coverage_report.test.js index d12b0f2f7b3a..642c0031def5 100644 --- a/e2e/__tests__/coverage_report.test.js +++ b/e2e/__tests__/coverage_report.test.js @@ -19,7 +19,7 @@ test('outputs coverage report', () => { const {stdout, status} = runJest(DIR, ['--no-cache', '--coverage'], { stripAnsi: true, }); - const coverageDir = path.resolve(__dirname, '../coverage-report/coverage'); + const coverageDir = path.join(DIR, 'coverage'); // - the `setup.js` file is ignored and should not be in the coverage report. // - `SumDependency.js` is mocked and the real module is never required but @@ -99,14 +99,7 @@ test('outputs coverage report as json', () => { {stripAnsi: true}, ); expect(status).toBe(0); - - try { - JSON.parse(stdout); - } catch (err) { - throw new Error( - "Can't parse the JSON result from stdout. " + err.toString(), - ); - } + expect(() => JSON.parse(stdout)).not.toThrow(); }); test('outputs coverage report when text is requested', () => { diff --git a/e2e/coverage-report/babel.config.js b/e2e/coverage-report/babel.config.js new file mode 100644 index 000000000000..6869642766b4 --- /dev/null +++ b/e2e/coverage-report/babel.config.js @@ -0,0 +1,3 @@ +module.exports = { + presets: ['@babel/preset-flow'], +}; diff --git a/e2e/coverage-report/package.json b/e2e/coverage-report/package.json index a36cacf43a71..4ced9148e930 100644 --- a/e2e/coverage-report/package.json +++ b/e2e/coverage-report/package.json @@ -3,6 +3,7 @@ "collectCoverageFrom": [ "**/*.js", "!setup.js", + "!babel.config.js", "!**/node_modules/**", "!**/coverage/**" ], diff --git a/e2e/coverage-transform-instrumented/Preprocessor.js b/e2e/coverage-transform-instrumented/Preprocessor.js index d43eae38f752..61c47fdf109b 100644 --- a/e2e/coverage-transform-instrumented/Preprocessor.js +++ b/e2e/coverage-transform-instrumented/Preprocessor.js @@ -7,6 +7,7 @@ const {transformSync: babelTransform} = require('@babel/core'); const {default: babelIstanbulPlugin} = require('babel-plugin-istanbul'); +// This is imported from this repo const jestPreset = require.resolve('babel-preset-jest'); const options = { @@ -33,8 +34,6 @@ module.exports = { ]; } - const transformResult = babelTransform(src, options); - - return transformResult ? transformResult.code : src; + return babelTransform(src, options) || src; }, }; diff --git a/e2e/coverage-transform-instrumented/package.json b/e2e/coverage-transform-instrumented/package.json index 5368b5e1389e..f4ed2ef57648 100644 --- a/e2e/coverage-transform-instrumented/package.json +++ b/e2e/coverage-transform-instrumented/package.json @@ -18,7 +18,6 @@ "dependencies": { "@babel/core": "^7.0.0", "@babel/preset-env": "^7.0.0", - "babel-plugin-istanbul": "^5.1.0", - "babel-preset-jest": "^23.2.0" + "babel-plugin-istanbul": "^5.1.0" } } diff --git a/e2e/coverage-transform-instrumented/yarn.lock b/e2e/coverage-transform-instrumented/yarn.lock index 538a9fd43857..29123d7e82d3 100644 --- a/e2e/coverage-transform-instrumented/yarn.lock +++ b/e2e/coverage-transform-instrumented/yarn.lock @@ -604,24 +604,6 @@ babel-plugin-istanbul@^5.1.0: istanbul-lib-instrument "^3.0.0" test-exclude "^5.0.0" -babel-plugin-jest-hoist@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-23.2.0.tgz#e61fae05a1ca8801aadee57a6d66b8cefaf44167" - integrity sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc= - -babel-plugin-syntax-object-rest-spread@^6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= - -babel-preset-jest@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-23.2.0.tgz#8ec7a03a138f001a1a8fb1e8113652bf1a55da46" - integrity sha1-jsegOhOPABoaj7HoETZSvxpV2kY= - dependencies: - babel-plugin-jest-hoist "^23.2.0" - babel-plugin-syntax-object-rest-spread "^6.13.0" - balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"