From d90abdceacbd196d3b762b8e69d7ba85ae82a63f Mon Sep 17 00:00:00 2001 From: Krzysztof Wolski Date: Thu, 25 Aug 2022 17:10:49 +0200 Subject: [PATCH] Test withSaleorDomainPresent --- ...th-registered-saleor-domain-header.test.ts | 2 +- .../with-saleor-domain-present.test.ts | 43 +++++++++++++++++++ 2 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 src/middleware/with-saleor-domain-present.test.ts diff --git a/src/middleware/with-registered-saleor-domain-header.test.ts b/src/middleware/with-registered-saleor-domain-header.test.ts index 6dc7fa7..ac319f1 100644 --- a/src/middleware/with-registered-saleor-domain-header.test.ts +++ b/src/middleware/with-registered-saleor-domain-header.test.ts @@ -8,7 +8,7 @@ import { withRegisteredSaleorDomainHeader } from "./with-registered-saleor-domai const getMockSuccessResponse = async () => Response.OK({}); -describe("middleware.test.ts", () => { +describe("middleware", () => { describe("withRegisteredSaleorDomainHeader", () => { let mockHandlerFn: Handler = vi.fn(getMockSuccessResponse); diff --git a/src/middleware/with-saleor-domain-present.test.ts b/src/middleware/with-saleor-domain-present.test.ts new file mode 100644 index 0000000..15aa579 --- /dev/null +++ b/src/middleware/with-saleor-domain-present.test.ts @@ -0,0 +1,43 @@ +import { Handler, Request } from "retes"; +import { Response } from "retes/response"; +import { beforeEach, describe, expect, it, vi } from "vitest"; + +import { SALEOR_DOMAIN_HEADER } from "../const"; +import { withSaleorDomainPresent } from "./with-saleor-domain-present"; + +const getMockSuccessResponse = async () => Response.OK({}); + +describe("middleware", () => { + describe("withSaleorDomainPresent", () => { + let mockHandlerFn: Handler = vi.fn(getMockSuccessResponse); + + beforeEach(() => { + mockHandlerFn = vi.fn(getMockSuccessResponse); + }); + + it("Pass request when request has Saleor Domain header", async () => { + const mockRequest = { + context: {}, + headers: { + [SALEOR_DOMAIN_HEADER]: "example.com", + }, + } as unknown as Request; + + const response = await withSaleorDomainPresent(mockHandlerFn)(mockRequest); + + expect(response.status).toBe(200); + expect(mockHandlerFn).toHaveBeenCalledOnce(); + }); + + it("Reject request when Saleor domain header is not present", async () => { + const mockRequest = { + context: {}, + headers: {}, + } as unknown as Request; + + const response = await withSaleorDomainPresent(mockHandlerFn)(mockRequest); + expect(response.status).eq(400); + expect(mockHandlerFn).toBeCalledTimes(0); + }); + }); +});