GitHub
01/16/2024, 3:14 PMVerifier.
Actual behaviour
Trying to provide a stateHandler with setup and teardown results in the following TypeScript error:
error TS2322: Type '{ setup: () => Promise<void>; teardown: () => Promise<void>; }' is not assignable to type 'StateHandler & ((state: string, params?: { [name: string]: string; } | undefined) => Promise<unknown>)'.
Type '{ setup: () => Promise<void>; teardown: () => Promise<void>; }' is not assignable to type 'StateFuncWithSetup & ((state: string, params?: { [name: string]: string; } | undefined) => Promise<unknown>)'.
Type '{ setup: () => Promise<void>; teardown: () => Promise<void>; }' is not assignable to type '(state: string, params?: { [name: string]: string; } | undefined) => Promise<unknown>'.
Type '{ setup: () => Promise<void>; teardown: () => Promise<void>; }' provides no match for the signature '(state: string, params?: { [name: string]: string; } | undefined): Promise<unknown>'.
Steps to reproduce
import { Verifier } from '@pact-foundation/pact';
const verifier = new Verifier({
stateHandlers: {
'name of the stateHandler': { setup: async () => {}, teardown: async () => {} } // this line produces a TypeScript error
}
});
pact-foundation/pact-js