From 74150557501d2f8717003b5b6cd5273110d7929d Mon Sep 17 00:00:00 2001 From: Walter Moar Date: Tue, 24 Sep 2024 16:03:15 +0000 Subject: [PATCH] tests: FORMS-1303 fix the unit tests for new code --- .../common/middleware/rateLimiter.spec.js | 25 +++++++++++++++---- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/app/tests/unit/forms/common/middleware/rateLimiter.spec.js b/app/tests/unit/forms/common/middleware/rateLimiter.spec.js index 8268c5fd8..ae260ebdc 100644 --- a/app/tests/unit/forms/common/middleware/rateLimiter.spec.js +++ b/app/tests/unit/forms/common/middleware/rateLimiter.spec.js @@ -70,7 +70,10 @@ describe('apiKeyRateLimiter', () => { await apiKeyRateLimiter(req, res, next); - expect(res.setHeader).toBeCalledTimes(0); + expect(res.setHeader).toBeCalledTimes(2); + // These also test that the rate limiter uses our custom config values. + expect(res.setHeader).toHaveBeenNthCalledWith(1, rateLimitPolicyName, rateLimitPolicyValue); + expect(res.setHeader).toHaveBeenNthCalledWith(2, rateLimitName, rateLimitValue); expect(next).toBeCalledTimes(1); expect(next).toBeCalledWith(); }); @@ -85,7 +88,10 @@ describe('apiKeyRateLimiter', () => { await apiKeyRateLimiter(req, res, next); - expect(res.setHeader).toBeCalledTimes(0); + expect(res.setHeader).toBeCalledTimes(2); + // These also test that the rate limiter uses our custom config values. + expect(res.setHeader).toHaveBeenNthCalledWith(1, rateLimitPolicyName, rateLimitPolicyValue); + expect(res.setHeader).toHaveBeenNthCalledWith(2, rateLimitName, rateLimitValue); expect(next).toBeCalledTimes(1); expect(next).toBeCalledWith(); }); @@ -102,7 +108,10 @@ describe('apiKeyRateLimiter', () => { await apiKeyRateLimiter(req, res, next); - expect(res.setHeader).toBeCalledTimes(0); + expect(res.setHeader).toBeCalledTimes(2); + // These also test that the rate limiter uses our custom config values. + expect(res.setHeader).toHaveBeenNthCalledWith(1, rateLimitPolicyName, rateLimitPolicyValue); + expect(res.setHeader).toHaveBeenNthCalledWith(2, rateLimitName, rateLimitValue); expect(next).toBeCalledTimes(1); expect(next).toBeCalledWith(); }); @@ -119,7 +128,10 @@ describe('apiKeyRateLimiter', () => { await apiKeyRateLimiter(req, res, next); - expect(res.setHeader).toBeCalledTimes(0); + expect(res.setHeader).toBeCalledTimes(2); + // These also test that the rate limiter uses our custom config values. + expect(res.setHeader).toHaveBeenNthCalledWith(1, rateLimitPolicyName, rateLimitPolicyValue); + expect(res.setHeader).toHaveBeenNthCalledWith(2, rateLimitName, rateLimitValue); expect(next).toBeCalledTimes(1); expect(next).toBeCalledWith(); }); @@ -136,7 +148,10 @@ describe('apiKeyRateLimiter', () => { await apiKeyRateLimiter(req, res, next); - expect(res.setHeader).toBeCalledTimes(0); + expect(res.setHeader).toBeCalledTimes(2); + // These also test that the rate limiter uses our custom config values. + expect(res.setHeader).toHaveBeenNthCalledWith(1, rateLimitPolicyName, rateLimitPolicyValue); + expect(res.setHeader).toHaveBeenNthCalledWith(2, rateLimitName, rateLimitValue); expect(next).toBeCalledTimes(1); expect(next).toBeCalledWith(); });