From d057b984caacbd919c4c0b91229d385dae8461e6 Mon Sep 17 00:00:00 2001 From: Varsha Adiga Date: Thu, 11 Apr 2024 17:38:05 +0530 Subject: [PATCH] Bv fetch changes to fix, PD-238557 (#140) * PD-238557, bug fix * PD-238557, fixing test cases * 2.9.3 --- lib/bvFetch/index.js | 5 +++-- package-lock.json | 2 +- package.json | 2 +- test/unit/bvFetch/index.spec.js | 13 +++++++------ 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/lib/bvFetch/index.js b/lib/bvFetch/index.js index bcd17b3..e7bf8b7 100644 --- a/lib/bvFetch/index.js +++ b/lib/bvFetch/index.js @@ -83,14 +83,15 @@ module.exports = function BvFetch ({ shouldCache, cacheName, cacheLimit }) { } }).then(() => { if (canBeCached) { - const clonedResponse = response.clone() + const clonedResponse = response.clone(); + const sizeCheck = response.clone(); const newHeaders = new Headers(); clonedResponse.headers.forEach((value, key) => { newHeaders.append(key, value); }); newHeaders.append('X-Bazaarvoice-Cached-Time', Date.now()) // Get response text to calculate its size - clonedResponse.text().then(text => { + sizeCheck.text().then(text => { // Calculate size of response text in bytes const sizeInBytes = new Blob([text]).size; diff --git a/package-lock.json b/package-lock.json index 51c76cc..7fe8885 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "bv-ui-core", - "version": "2.9.2", + "version": "2.9.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 5465847..ea04d02 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "bv-ui-core", - "version": "2.9.2", + "version": "2.9.3", "license": "Apache 2.0", "description": "Bazaarvoice UI-related JavaScript", "repository": { diff --git a/test/unit/bvFetch/index.spec.js b/test/unit/bvFetch/index.spec.js index 931db40..d734063 100644 --- a/test/unit/bvFetch/index.spec.js +++ b/test/unit/bvFetch/index.spec.js @@ -140,16 +140,17 @@ describe('BvFetch', function () { bvFetchInstance.bvFetchFunc(url, options) .then(response => { // Check if response is fetched from network - expect(response).to.not.be.null; - console.log(response.body) + setTimeout(() => { + expect(response).to.not.be.null; + console.log(response.body) // Check if caches.match was called - expect(cacheStub.calledOnce).to.be.false; + expect(cacheStub.calledOnce).to.be.false; // Check if response is not cached - const cachedResponse = cacheStorage.get(url); - expect(cachedResponse).to.be.undefined; - + const cachedResponse = cacheStorage.get(url); + expect(cachedResponse).to.be.undefined; + }, 500) done(); }) .catch(done);