From a02b0cfdf3e1d5eeb340b9dce3eed49edc0f432a Mon Sep 17 00:00:00 2001 From: LauraPinilla Date: Tue, 26 Mar 2024 20:28:09 -0600 Subject: [PATCH] add tests --- .../identity-block/utils/useRecaptcha.test.js | 40 ++++++++++++++++--- 1 file changed, 35 insertions(+), 5 deletions(-) diff --git a/blocks/identity-block/utils/useRecaptcha.test.js b/blocks/identity-block/utils/useRecaptcha.test.js index 2fbb95cee..8e4b3aef9 100644 --- a/blocks/identity-block/utils/useRecaptcha.test.js +++ b/blocks/identity-block/utils/useRecaptcha.test.js @@ -50,7 +50,7 @@ const mockIdentity = { const mockSales = { getConfig: jest.fn(() => Promise.resolve({ - checkoutRecaptchaEnabled: false, + checkoutRecaptchaEnabled: true, }), ), }; @@ -120,8 +120,8 @@ describe("useRecaptcha", () => { ); }); - it("reCaptcha v2 enabled for magicLink", async () => { - const { result } = renderHook(() => useRecaptcha("magicLink")); + it("reCaptcha v2 enabled for checkout", async () => { + const { result } = renderHook(() => useRecaptcha("checkout")); expect(result.current.recaptchaVersion).toBe(undefined); expect(result.current.siteKey).toBe(undefined); @@ -136,14 +136,44 @@ describe("useRecaptcha", () => { ); }); - it("reCaptcha v2 disabled for signIn", async () => { + it("reCaptcha v3 enabled for signIn", async () => { + useIdentity.mockReturnValueOnce({ + isInitialized: true, + Identity: { + getConfig: jest.fn(() => + Promise.resolve({ + signupRecaptcha: true, + signinRecaptcha: true, + magicLinkRecaptcha: true, + recaptchaScore: "0.5", + recaptchaSiteKey: "6LemcOMhAAAAAEGptytQEAMK_SfH4ZAGJ_e4652C", + }), + ), + }, + }); + + const { result } = renderHook(() => useRecaptcha("signin")); + + expect(result.current.recaptchaVersion).toBe(undefined); + expect(result.current.siteKey).toBe(undefined); + expect(result.current.isRecaptchaEnabled).toBe(false); + + await waitFor(() => expect(result.current.recaptchaVersion).toEqual("V3")); + + await waitFor(() => expect(result.current.isRecaptchaEnabled).toEqual(true)); + await waitFor(() => + expect(result.current.siteKey).toEqual("6LemcOMhAAAAAEGptytQEAMK_SfH4ZAGJ_e4652C"), + ); + }); + + it("reCaptcha v2 disabled for signIn", async () => { useIdentity.mockReturnValueOnce({ isInitialized: true, Identity: { getConfig: jest.fn(() => Promise.resolve({ - signupRecaptcha: false, // Change the mocked data here + signupRecaptcha: false, signinRecaptcha: false, magicLinkRecaptcha: false, recaptchaScore: "-1",