UNPKG

e2ed

Version:

E2E testing framework over Playwright

26 lines (25 loc) 1.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.addResponseToApiStatistics = void 0; const apiStatistics_1 = require("../../context/apiStatistics"); const headers_1 = require("../headers"); const addApiStatistics_1 = require("./addApiStatistics"); const getUrlTemplate_1 = require("./getUrlTemplate"); /** * Adds single `ResponseWithRequest` to API statistics. * @internal */ const addResponseToApiStatistics = (responseWithRequest) => { const apiStatistics = (0, apiStatistics_1.getApiStatistics)(); const duration = responseWithRequest.completionTimeInMs - responseWithRequest.request.utcTimeInMs; const { request: { method, url }, statusCode, } = responseWithRequest; const { hasExtension, urlTemplate } = (0, getUrlTemplate_1.getUrlTemplate)(url); const isResource = hasExtension && method === 'GET'; const size = Number((0, headers_1.getHeaderValue)(responseWithRequest.responseHeaders, 'content-length')) || 0; const requestStatistics = { [statusCode]: { count: 1, duration, size } }; const additionalApiStatistics = isResource ? { pages: {}, requests: {}, resources: { [urlTemplate]: requestStatistics } } : { pages: {}, requests: { [urlTemplate]: { [method]: requestStatistics } }, resources: {} }; (0, addApiStatistics_1.addApiStatistics)(apiStatistics, additionalApiStatistics); }; exports.addResponseToApiStatistics = addResponseToApiStatistics;