diff --git a/src/Page/TextLayer.spec.jsx b/src/Page/TextLayer.spec.jsx
index cd79f5802..b68e02ffb 100644
--- a/src/Page/TextLayer.spec.jsx
+++ b/src/Page/TextLayer.spec.jsx
@@ -98,13 +98,69 @@ describe('TextLayer', () => {
expect(textItems).toHaveLength(desiredTextItems.length + 1);
});
+ it('renders text content properly given customTextRenderer', async () => {
+ const { func: onRenderTextLayerSuccess, promise: onRenderTextLayerSuccessPromise } =
+ makeAsyncCallback();
+
+ const customTextRenderer = jest.fn();
+
+ const { container } = render(
+ ,
+ );
+
+ expect.assertions(1);
+
+ await onRenderTextLayerSuccessPromise;
+
+ const textItems = [...container.firstChild.children];
+ expect(textItems).toHaveLength(desiredTextItems.length + 1);
+ });
+
+ it('maps textContent items to actual TextLayer children properly', async () => {
+ const { func: onRenderTextLayerSuccess, promise: onRenderTextLayerSuccessPromise } =
+ makeAsyncCallback();
+
+ const { container, rerender } = render(
+ ,
+ );
+
+ expect.assertions(1);
+
+ await onRenderTextLayerSuccessPromise;
+
+ const innerHTML = container.firstChild.innerHTML;
+
+ const { func: onRenderTextLayerSuccess2, promise: onRenderTextLayerSuccessPromise2 } =
+ makeAsyncCallback();
+
+ const customTextRenderer = (item) => item.str;
+
+ rerender(
+ ,
+ );
+
+ await onRenderTextLayerSuccessPromise2;
+
+ const innerHTML2 = container.firstChild.innerHTML;
+
+ expect(innerHTML).toEqual(innerHTML2);
+ });
+
it('calls customTextRenderer with necessary arguments', async () => {
const { func: onRenderTextLayerSuccess, promise: onRenderTextLayerSuccessPromise } =
makeAsyncCallback();
const customTextRenderer = jest.fn();
- render(
+ const { container } = render(
{
/>,
);
- expect.assertions(2);
+ expect.assertions(3);
await onRenderTextLayerSuccessPromise;
+ const textItems = [...container.firstChild.children];
+ expect(textItems).toHaveLength(desiredTextItems.length + 1);
+
expect(customTextRenderer).toHaveBeenCalledTimes(desiredTextItems.length);
expect(customTextRenderer).toHaveBeenCalledWith(
expect.objectContaining({