UNPKG

mockttp-mvs

Version:

Mock HTTP server for testing HTTP clients and stubbing webservices

33 lines (32 loc) 1.32 kB
import { OngoingRequest, CompletedRequest, OngoingResponse, Explainable } from "../../types"; import { MaybePromise } from '../../util/type-utils'; import * as matchers from "../matchers"; import type { RequestHandlerDefinition } from "./request-handler-definitions"; import { RequestHandler } from "./request-handlers"; import * as completionCheckers from "../completion-checkers"; export interface RequestRule extends Explainable { id: string; requests: Promise<CompletedRequest>[]; matches(request: OngoingRequest): MaybePromise<boolean>; handle(request: OngoingRequest, response: OngoingResponse, record: boolean): Promise<void>; isComplete(): boolean | null; } export interface RequestRuleData { id?: string; priority?: number; matchers: matchers.RequestMatcher[]; handler: RequestHandler | RequestHandlerDefinition; completionChecker?: completionCheckers.RuleCompletionChecker; } export declare class RequestRule implements RequestRule { private matchers; private handler; private completionChecker?; id: string; readonly priority: number; requests: Promise<CompletedRequest>[]; requestCount: number; constructor(data: RequestRuleData); explain(withoutExactCompletion?: boolean): string; dispose(): void; }