From 55ba2082a6d166bcd16171dea3c124845b16c75d Mon Sep 17 00:00:00 2001 From: Kathryn Beaty Date: Thu, 10 Aug 2023 15:25:04 -0400 Subject: [PATCH] add test for rendering custom flair badges in stream --- .../test/comments/stream/badges.spec.tsx | 24 ++++++++++++++++++- src/core/client/stream/test/fixtures.ts | 5 ++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/src/core/client/stream/test/comments/stream/badges.spec.tsx b/src/core/client/stream/test/comments/stream/badges.spec.tsx index f4ee0fa20a..78db5bdc79 100644 --- a/src/core/client/stream/test/comments/stream/badges.spec.tsx +++ b/src/core/client/stream/test/comments/stream/badges.spec.tsx @@ -1,4 +1,4 @@ -import { act, screen } from "@testing-library/react"; +import { act, screen, within } from "@testing-library/react"; import { pureMerge } from "coral-common/utils"; import { GQLResolver, GQLSettings, GQLStory } from "coral-framework/schema"; @@ -103,4 +103,26 @@ describe("user badges", () => { expect(staffBadge).toBeDefined(); expect(moderatorBadge).toBeDefined(); }); + + it("renders custom flair badges", async () => { + const resolvers = createResolversStub({ + Query: { + stream: ({ variables, ...rest }) => { + return storyWithBadgeComments; + }, + }, + }); + await act(async () => { + await createTestRenderer({ + resolvers, + }); + }); + const memberComment = screen.getByRole("article", { + name: "Comment from member 2018-07-06T18:24:00.000Z", + }); + expect(within(memberComment).getByRole("img")).toHaveAttribute( + "src", + "https://wwww.example.com/image.jpg" + ); + }); }); diff --git a/src/core/client/stream/test/fixtures.ts b/src/core/client/stream/test/fixtures.ts index a961bc8db4..76de5ebbaa 100644 --- a/src/core/client/stream/test/fixtures.ts +++ b/src/core/client/stream/test/fixtures.ts @@ -131,6 +131,10 @@ export const settings = createFixture({ sarcasm: false, }, flattenReplies: false, + flairBadges: { + flairBadgesEnabled: true, + flairBadgeURLs: ["https://wwww.example.com/image.jpg"], + }, }); export const site = createFixtures([ @@ -336,6 +340,7 @@ export const member = createFixture({ id: "member-user", username: "member", role: GQLUSER_ROLE.MEMBER, + badges: ["https://wwww.example.com/image.jpg"], }); export const commenters = createFixtures(