Mockttp | mockttp

Interface Mockttp

interface Mockttp {
    port: number;
    proxyEnv: ProxyEnvConfig;
    url: string;
    addRequestRule(ruleData: RequestRuleData): Promise<MockedEndpoint>;
    addRequestRules(...ruleData: RequestRuleData[]): Promise<MockedEndpoint[]>;
    addWebSocketRule(ruleData: WebSocketRuleData): Promise<MockedEndpoint>;
    addWebSocketRules(...ruleData: WebSocketRuleData[]): Promise<MockedEndpoint[]>;
    enableDebug(): void;
    forAnyRequest(): RequestRuleBuilder;
    forAnyWebSocket(url?: string | RegExp): WebSocketRuleBuilder;
    forDelete(url?: string | RegExp): RequestRuleBuilder;
    forGet(url?: string | RegExp): RequestRuleBuilder;
    forHead(url?: string | RegExp): RequestRuleBuilder;
    forJsonRpcRequest(match?: {
        method?: string;
        params?: any;
    }): RequestRuleBuilder;
    forOptions(url?: string | RegExp): RequestRuleBuilder;
    forPatch(url?: string | RegExp): RequestRuleBuilder;
    forPost(url?: string | RegExp): RequestRuleBuilder;
    forPut(url?: string | RegExp): RequestRuleBuilder;
    forUnmatchedRequest(): RequestRuleBuilder;
    getMockedEndpoints(): Promise<MockedEndpoint[]>;
    getPendingEndpoints(): Promise<MockedEndpoint[]>;
    getRuleParameterKeys(): Promise<string[]>;
    on(event: "request-initiated", callback: ((req: Request) => void)): Promise<void>;
    on(event: "request-body-data", callback: ((req: BodyData) => void)): Promise<void>;
    on(event: "request", callback: ((req: CompletedRequest) => void)): Promise<void>;
    on(event: "response-initiated", callback: ((req: InitiatedResponse) => void)): Promise<void>;
    on(event: "response-body-data", callback: ((req: BodyData) => void)): Promise<void>;
    on(event: "response", callback: ((req: CompletedResponse) => void)): Promise<void>;
    on(event: "websocket-request", callback: ((req: CompletedRequest) => void)): Promise<void>;
    on(event: "websocket-accepted", callback: ((req: CompletedResponse) => void)): Promise<void>;
    on(event: "websocket-message-received", callback: ((req: WebSocketMessage) => void)): Promise<void>;
    on(event: "websocket-message-sent", callback: ((req: WebSocketMessage) => void)): Promise<void>;
    on(event: "websocket-close", callback: ((req: WebSocketClose) => void)): Promise<void>;
    on(event: "abort", callback: ((req: AbortedRequest) => void)): Promise<void>;
    on(event: "tls-passthrough-opened", callback: ((req: TlsPassthroughEvent) => void)): Promise<void>;
    on(event: "tls-passthrough-closed", callback: ((req: TlsPassthroughEvent) => void)): Promise<void>;
    on(event: "tls-client-error", callback: ((req: TlsHandshakeFailure) => void)): Promise<void>;
    on(event: "client-error", callback: ((error: ClientError) => void)): Promise<void>;
    on(event: "raw-passthrough-opened", callback: ((req: RawPassthroughEvent) => void)): Promise<void>;
    on(event: "raw-passthrough-closed", callback: ((req: RawPassthroughEvent) => void)): Promise<void>;
    on(event: "raw-passthrough-data", callback: ((req: RawPassthroughDataEvent) => void)): Promise<void>;
    on<T>(event: "rule-event", callback: ((event: RuleEvent<T>) => void)): Promise<void>;
    reset(): void;
    setRequestRules(...ruleData: RequestRuleData[]): Promise<MockedEndpoint[]>;
    setWebSocketRules(...ruleData: WebSocketRuleData[]): Promise<MockedEndpoint[]>;
    start(port?: number | PortRange): Promise<void>;
    stop(): Promise<void>;
    urlFor(path: string): string;
}

Implemented by

Events

on

  • on(event, callback): Promise<void>
  • Parameters

    • event: "request-initiated"
    • callback: ((req: Request) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "request-body-data"
    • callback: ((req: BodyData) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "request"
    • callback: ((req: CompletedRequest) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "response-initiated"
    • callback: ((req: InitiatedResponse) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "response-body-data"
    • callback: ((req: BodyData) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "websocket-request"
    • callback: ((req: CompletedRequest) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "websocket-accepted"
    • callback: ((req: CompletedResponse) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "websocket-message-received"
    • callback: ((req: WebSocketMessage) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "websocket-message-sent"
    • callback: ((req: WebSocketMessage) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "websocket-close"
    • callback: ((req: WebSocketClose) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "abort"
    • callback: ((req: AbortedRequest) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "tls-passthrough-opened"
    • callback: ((req: TlsPassthroughEvent) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "tls-passthrough-closed"
    • callback: ((req: TlsPassthroughEvent) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "client-error"
    • callback: ((error: ClientError) => void)
        • (error): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "raw-passthrough-opened"
    • callback: ((req: RawPassthroughEvent) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    • event: "raw-passthrough-closed"
    • callback: ((req: RawPassthroughEvent) => void)
        • (req): void
        • Returns void

    Returns Promise<void>

  • on(event, callback): Promise<void>
  • Parameters

    Returns Promise<void>

  • on<T>(event, callback): Promise<void>
  • Type Parameters

    • T = unknown

    Parameters

    • event: "rule-event"
    • callback: ((event: RuleEvent<T>) => void)
        • (event): void
        • Returns void

    Returns Promise<void>

Manual rule definition

addRequestRule

addRequestRules

addWebSocketRule

addWebSocketRules

setRequestRules

setWebSocketRules

Metadata

port

port: number

proxyEnv

url

url: string

getMockedEndpoints

getPendingEndpoints

getRuleParameterKeys

  • getRuleParameterKeys(): Promise<string[]>
  • Returns Promise<string[]>

urlFor

  • urlFor(path): string
  • Returns string

Mock HTTP requests

forAnyRequest

forDelete

forGet

forHead

forJsonRpcRequest

  • forJsonRpcRequest(match?): RequestRuleBuilder
  • Parameters

    • Optionalmatch: {
          method?: string;
          params?: any;
      }
      • Optionalmethod?: string
      • Optionalparams?: any

    Returns RequestRuleBuilder

forOptions

forPatch

forPost

forPut

forUnmatchedRequest

Mock websockets

forAnyWebSocket

Setup

enableDebug

  • enableDebug(): void
  • Returns void

reset

  • reset(): void
  • Returns void

start

  • start(port?): Promise<void>
  • Returns Promise<void>

stop

  • stop(): Promise<void>
  • Returns Promise<void>