diff --git a/apps/comments-ui/src/components/IFrame.js b/apps/comments-ui/src/components/IFrame.js index ae3fe8ef8b..b49e6f41f4 100644 --- a/apps/comments-ui/src/components/IFrame.js +++ b/apps/comments-ui/src/components/IFrame.js @@ -13,7 +13,7 @@ export default class IFrame extends Component { componentWillUnmout() { this.node.removeEventListener('load', this.handleLoad); } - + setupFrameBaseStyle() { if (this.node.contentDocument) { this.iframeHtml = this.node.contentDocument.documentElement; @@ -22,7 +22,7 @@ export default class IFrame extends Component { this.forceUpdate(); if (this.props.onResize) { - (new ResizeObserver(_ => this.props.onResize(this.iframeRoot))).observe(this.iframeRoot); + (new ResizeObserver(_ => this.props.onResize(this.iframeRoot)))?.observe?.(this.iframeRoot); } } } diff --git a/apps/comments-ui/src/setupTests.js b/apps/comments-ui/src/setupTests.js index 8f2609b7b3..624701cbee 100644 --- a/apps/comments-ui/src/setupTests.js +++ b/apps/comments-ui/src/setupTests.js @@ -3,3 +3,9 @@ // expect(element).toHaveTextContent(/react/i) // learn more: https://github.com/testing-library/jest-dom import '@testing-library/jest-dom'; + +global.ResizeObserver = jest.fn().mockImplementation(() => ({ + observe: jest.fn(), + unobserve: jest.fn(), + disconnect: jest.fn() +}));