Skip to content

Commit bae01c8

Browse files
committed
INT-3336: Wait for TinyMCE to finish updating the content before rerendering
1 parent b1f435a commit bae01c8

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

src/test/ts/alien/Loader.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,13 @@ export const render = async (props: Partial<IAllProps> = {}, container: HTMLElem
8080
/** By rendering the Editor into the same root, React will perform a diff and update. */
8181
reRender: (newProps: IAllProps) => new Promise<void>((resolve) => {
8282
root.render(<div><Editor apiKey='no-api-key' ref={ctx.ref} {...newProps} /></div>);
83-
resolve();
83+
if ('value' in newProps) {
84+
ctx.editor.once('change', () => {
85+
resolve();
86+
});
87+
} else {
88+
resolve();
89+
}
8490
}),
8591
remove,
8692
[Symbol.dispose]: remove

src/test/ts/browser/EditorInitTest.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,14 +65,14 @@ describe('EditorInitTest', () => {
6565
it('Value prop should propagate changes to editor', async () => {
6666
using ctx = await render({ value: '<p>Initial Value</p>' });
6767
TinyAssertions.assertContent(ctx.editor, '<p>Initial Value</p>');
68-
ctx.reRender({ ...defaultProps, value: '<p>New Value</p>' });
68+
await ctx.reRender({ ...defaultProps, value: '<p>New Value</p>' });
6969
TinyAssertions.assertContent(ctx.editor, '<p>New Value</p>');
7070
});
7171

7272
it('Disabled prop should disable editor', async () => {
7373
using ctx = await render();
7474
Assertions.assertEq('Should be design mode', true, '4' === version ? !ctx.editor.readonly : ctx.editor.mode.get() === 'design');
75-
ctx.reRender({ ...defaultProps, disabled: true });
75+
await ctx.reRender({ ...defaultProps, disabled: true });
7676
Assertions.assertEq('Should be readonly mode', true, '4' === version ? ctx.editor.readonly : ctx.editor.mode.get() === 'readonly');
7777
});
7878

0 commit comments

Comments
 (0)