UNPKG

@mswjs/interceptors

Version:

Low-level HTTP/HTTPS/XHR/fetch request interception library.

22 lines (17 loc) 616 B
import { invariant } from 'outvariant' import { DeferredPromise } from '@open-draft/deferred-promise' export class RequestController { public responsePromise: DeferredPromise<Response | undefined> constructor(protected request: Request) { this.responsePromise = new DeferredPromise() } public respondWith(response?: Response): void { invariant( this.responsePromise.state === 'pending', 'Failed to respond to "%s %s" request: the "request" event has already been responded to.', this.request.method, this.request.url ) this.responsePromise.resolve(response) } }