From 1bdd67c506cd556376e9d5db4c383d0912b76933 Mon Sep 17 00:00:00 2001 From: Matt Phillips Date: Fri, 1 Mar 2019 19:12:51 +0000 Subject: [PATCH] Extract jest-each type defs to global --- packages/jest-each/src/bind.ts | 23 +++++++++++------------ packages/jest-each/src/index.ts | 4 ++-- packages/jest-each/src/table/array.ts | 3 ++- packages/jest-each/src/table/template.ts | 3 ++- packages/jest-each/src/validation.ts | 2 +- packages/jest-types/src/Global.ts | 15 +++++++++++++-- 6 files changed, 31 insertions(+), 19 deletions(-) diff --git a/packages/jest-each/src/bind.ts b/packages/jest-each/src/bind.ts index fa3447996aec..a026a023384f 100644 --- a/packages/jest-each/src/bind.ts +++ b/packages/jest-each/src/bind.ts @@ -6,29 +6,28 @@ * */ -import {DoneFn, ItBase} from '@jest/types/build/Global'; +import { + DoneFn, + EachTable, + TemplateData, + EachTestFn, + ArrayTable, +} from '@jest/types/build/Global'; import {ErrorWithStack} from 'jest-util'; import convertArrayTable from './table/array'; import convertTemplateTable from './table/template'; import {validateArrayTable, validateTemplateTableHeadings} from './validation'; -type EachTestFn = (...args: any[]) => Promise | void | undefined; - -export type Col = unknown; -export type Row = Array; -export type Table = Array; -export type ArrayTable = Table | Row; -type TemplateTable = TemplateStringsArray; -export type TemplateData = Array; -export type EachTable = ArrayTable | TemplateTable; - export type EachTests = Array<{ title: string; arguments: Array; }>; -export default (cb: ItBase, supportsDone: boolean = true) => ( +type TestFn = (done?: DoneFn) => Promise | void | undefined; +type GlobalCallback = (testName: string, fn: TestFn, timeout?: number) => void; + +export default (cb: GlobalCallback, supportsDone: boolean = true) => ( table: EachTable, ...taggedTemplateData: TemplateData ) => diff --git a/packages/jest-each/src/index.ts b/packages/jest-each/src/index.ts index 5a6911233d86..910ba8322189 100644 --- a/packages/jest-each/src/index.ts +++ b/packages/jest-each/src/index.ts @@ -6,8 +6,8 @@ * */ -import {TestFn} from '@jest/types/build/Global'; -import bind, {EachTable, TemplateData} from './bind'; +import {TestFn, EachTable, TemplateData} from '@jest/types/build/Global'; +import bind from './bind'; type Global = NodeJS.Global; diff --git a/packages/jest-each/src/table/array.ts b/packages/jest-each/src/table/array.ts index eaac86526e7e..4729c8a62d17 100644 --- a/packages/jest-each/src/table/array.ts +++ b/packages/jest-each/src/table/array.ts @@ -1,7 +1,8 @@ import util from 'util'; import pretty from 'pretty-format'; -import {ArrayTable, Col, EachTests, Row, Table} from '../bind'; +import {ArrayTable, Table, Row, Col} from '@jest/types/build/Global'; +import {EachTests} from '../bind'; const SUPPORTED_PLACEHOLDERS = /%[sdifjoOp%]/g; const PRETTY_PLACEHOLDER = '%p'; diff --git a/packages/jest-each/src/table/template.ts b/packages/jest-each/src/table/template.ts index dfa6e1390b31..65e2d6e39cd5 100644 --- a/packages/jest-each/src/table/template.ts +++ b/packages/jest-each/src/table/template.ts @@ -1,6 +1,7 @@ import pretty from 'pretty-format'; import {isPrimitive} from 'jest-get-type'; -import {EachTests, Row, Table} from '../bind'; +import {Row, Table} from '@jest/types/build/Global'; +import {EachTests} from '../bind'; type Template = {[key: string]: unknown}; type Templates = Array