fulfill({status, headers, body}) {
    debugServer('fulfill', this.url());
    status = status || 200;
    const responseHeaders = {};
    if (headers) {
      for (const header of Object.keys(headers))
        responseHeaders[header.toLowerCase()] = headers[header];
    }
    if (body && !('content-length' in responseHeaders))
      responseHeaders['content-length'] = Buffer.byteLength(body);

    const statusText = statusTexts[status] || '';
    const statusLine = `HTTP/1.1 ${status} ${statusText}`;

    const CRLF = '\r\n';
    let text = statusLine + CRLF;
    for (const header of Object.keys(responseHeaders))
      text += header + ': ' + responseHeaders[header] + CRLF;
    text += CRLF;
    let responseBuffer = Buffer.from(text, 'utf8');
    if (body)
      responseBuffer = Buffer.concat([responseBuffer, body]);

    return this.resolve_({
      interceptionId: this.interceptionId_,
      rawResponse: responseBuffer.toString('base64')
    });
  }
Fulfills the request with the given data.

@param {{status: number|undefined,
         headers: !Object<string,string>|undefined,
         body: !Buffer|undefined}} options