From fa7afd423724510ed9afa8d9fea377baac60aeee Mon Sep 17 00:00:00 2001 From: Shourav Nath Date: Sat, 25 Nov 2023 12:44:39 +0600 Subject: [PATCH] feat(#1050): Response time in res --- packages/bruno-app/src/components/CodeEditor/index.js | 2 ++ packages/bruno-cli/src/runner/run-single-request.js | 2 ++ packages/bruno-electron/src/ipc/network/index.js | 2 ++ packages/bruno-js/src/bruno-response.js | 5 +++++ packages/bruno-js/src/utils.js | 1 + 5 files changed, 12 insertions(+) diff --git a/packages/bruno-app/src/components/CodeEditor/index.js b/packages/bruno-app/src/components/CodeEditor/index.js index 565e3ec8..d31a1e8c 100644 --- a/packages/bruno-app/src/components/CodeEditor/index.js +++ b/packages/bruno-app/src/components/CodeEditor/index.js @@ -27,10 +27,12 @@ if (!SERVER_RENDERED) { 'res.statusText', 'res.headers', 'res.body', + 'res.responseTime', 'res.getStatus()', 'res.getHeader(name)', 'res.getHeaders()', 'res.getBody()', + 'res.getResponseTime()', 'req', 'req.url', 'req.method', diff --git a/packages/bruno-cli/src/runner/run-single-request.js b/packages/bruno-cli/src/runner/run-single-request.js index 32122f74..486c82a2 100644 --- a/packages/bruno-cli/src/runner/run-single-request.js +++ b/packages/bruno-cli/src/runner/run-single-request.js @@ -210,6 +210,8 @@ const runSingleRequest = async function ( } } + response.responseTime = responseTime; + console.log( chalk.green(stripExtension(filename)) + chalk.dim(` (${response.status} ${response.statusText}) - ${responseTime} ms`) diff --git a/packages/bruno-electron/src/ipc/network/index.js b/packages/bruno-electron/src/ipc/network/index.js index cef305f1..cf6abc36 100644 --- a/packages/bruno-electron/src/ipc/network/index.js +++ b/packages/bruno-electron/src/ipc/network/index.js @@ -446,6 +446,8 @@ const registerNetworkIpc = (mainWindow) => { const { data, dataBuffer } = parseDataFromResponse(response); response.data = data; + response.responseTime = responseTime; + // save cookies let setCookieHeaders = []; if (response.headers['set-cookie']) { diff --git a/packages/bruno-js/src/bruno-response.js b/packages/bruno-js/src/bruno-response.js index f35696fe..57e11a64 100644 --- a/packages/bruno-js/src/bruno-response.js +++ b/packages/bruno-js/src/bruno-response.js @@ -5,6 +5,7 @@ class BrunoResponse { this.statusText = res ? res.statusText : null; this.headers = res ? res.headers : null; this.body = res ? res.data : null; + this.responseTime = res ? res.responseTime : null; } getStatus() { @@ -22,6 +23,10 @@ class BrunoResponse { getBody() { return this.res ? this.res.data : null; } + + getResponseTime() { + return this.res ? this.res.responseTime : null; + } } module.exports = BrunoResponse; diff --git a/packages/bruno-js/src/utils.js b/packages/bruno-js/src/utils.js index 7d6b2db3..a30ad8e8 100644 --- a/packages/bruno-js/src/utils.js +++ b/packages/bruno-js/src/utils.js @@ -109,6 +109,7 @@ const createResponseParser = (response = {}) => { res.statusText = response.statusText; res.headers = response.headers; res.body = response.data; + res.responseTime = response.responseTime; res.jq = (expr) => { const output = jsonQuery(expr, { data: response.data });