diff --git a/src/elements/content-sidebar/DocGenSidebar/DocGenSidebar.tsx b/src/elements/content-sidebar/DocGenSidebar/DocGenSidebar.tsx index bea3813399..ac18482d30 100644 --- a/src/elements/content-sidebar/DocGenSidebar/DocGenSidebar.tsx +++ b/src/elements/content-sidebar/DocGenSidebar/DocGenSidebar.tsx @@ -103,7 +103,6 @@ const DocGenSidebar = ({ getDocGenTags }: Props) => { // @ts-ignore const { data } = response || []; - // anything that is not an image tag for this view is treated as a text tag const textTags = data?.filter(tag => tag.tag_type !== 'image') || []; const imageTags = data?.filter(tag => tag.tag_type === 'image') || []; diff --git a/src/elements/content-sidebar/__tests__/DocGenSidebar.test.tsx b/src/elements/content-sidebar/__tests__/DocGenSidebar.test.tsx index 53550e8213..1b072ffe41 100644 --- a/src/elements/content-sidebar/__tests__/DocGenSidebar.test.tsx +++ b/src/elements/content-sidebar/__tests__/DocGenSidebar.test.tsx @@ -13,6 +13,15 @@ const docGenSidebarProps = { ), }; +const processAndResolveMock = jest.fn() +.mockImplementationOnce(() => Promise.resolve({ + message: "Processing tags for this file." +})) +.mockImplementationOnce(() => Promise.resolve({ + pagination: {}, + data: mockData, +})); + const noTagsMock = jest.fn().mockReturnValue(Promise.resolve({ data: [] })); const processingTagsMock = jest.fn().mockReturnValue(Promise.resolve({ "message": "Processing tags for this file." @@ -110,6 +119,20 @@ describe('elements/content-sidebar/DocGenSidebar', () => { await waitFor(() => expect(processingTagsMock).toHaveBeenCalledTimes(10)); }); + test('should re-trigger loadTags retrigger and successfully display the tags', async () => { + renderComponent({ + getDocGenTags: processAndResolveMock, + }); + + await jest.advanceTimersByTime(1000); + await jest.advanceTimersByTime(1000); + + await waitFor(() => expect(processAndResolveMock).toHaveBeenCalledTimes(2)); + const parentTag = await screen.findByText('about'); + + expect(parentTag).toBeVisible(); + }); + test('should re-trigger getDocGenTags on click on refresh button', async () => { renderComponent({