diff --git a/CHANGELOG.md b/CHANGELOG.md index aa078a389e3e..227365427b90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -55,6 +55,7 @@ - `[jest-resolve-dependencies]`: Migrate to TypeScript ([#7922](https://github.com/facebook/jest/pull/7922)) - `[expect]`: Migrate to TypeScript ([#7919](https://github.com/facebook/jest/pull/7919)) - `[jest-circus]`: Migrate to TypeScript ([#7916](https://github.com/facebook/jest/pull/7916)) +- `[jest-phabricator]`: Migrate to TypeScript ([#7965](https://github.com/facebook/jest/pull/7965)) ### Performance diff --git a/packages/jest-phabricator/package.json b/packages/jest-phabricator/package.json index b711d648af56..f1000201d15c 100644 --- a/packages/jest-phabricator/package.json +++ b/packages/jest-phabricator/package.json @@ -6,6 +6,10 @@ "url": "https://github.com/facebook/jest.git", "directory": "packages/jest-phabricator" }, + "types": "build/index.d.ts", + "dependencies": { + "@jest/types": "^24.1.0" + }, "engines": { "node": ">= 6" }, diff --git a/packages/jest-phabricator/src/index.js b/packages/jest-phabricator/src/index.ts similarity index 86% rename from packages/jest-phabricator/src/index.js rename to packages/jest-phabricator/src/index.ts index 5c02ee4ae1b3..595e09402b58 100644 --- a/packages/jest-phabricator/src/index.js +++ b/packages/jest-phabricator/src/index.ts @@ -3,23 +3,22 @@ * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - * @flow */ -import type { +import { AggregatedResult, AggregatedResultWithoutCoverage, CoverageMap, -} from 'types/TestResult'; +} from '@jest/types'; type PhabricatorReport = AggregatedResultWithoutCoverage & { - coverageMap?: ?CoverageMap, + coverageMap?: CoverageMap | null; }; function summarize(coverageMap: CoverageMap) { const summaries = Object.create(null); - coverageMap.files().forEach(file => { + coverageMap.files().forEach((file: string) => { const covered = []; const lineCoverage = coverageMap.fileCoverageFor(file).getLineCoverage(); @@ -42,7 +41,6 @@ function summarize(coverageMap: CoverageMap) { } module.exports = function(results: AggregatedResult): PhabricatorReport { - // $FlowFixMe: This should work, but it does not. return { ...results, coverageMap: results.coverageMap && summarize(results.coverageMap), diff --git a/packages/jest-phabricator/tsconfig.json b/packages/jest-phabricator/tsconfig.json new file mode 100644 index 000000000000..7a7b7a460af1 --- /dev/null +++ b/packages/jest-phabricator/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "rootDir": "src", + "outDir": "build" + }, + "references": [ + { + "path": "../jest-types" + } + ] +}