Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix intermittent RichText e2e test failure #20457

Merged
merged 4 commits into from Feb 26, 2020
Merged

Conversation

@youknowriad
Copy link
Contributor

youknowriad commented Feb 26, 2020

It seems like there might a be a very small delay between the mouse moving and the block toolbar being shown causing a test failure.

This PR fixes the issue by waiting for the toolbar to show before proceeding.

@github-actions

This comment has been minimized.

Copy link

github-actions bot commented Feb 26, 2020

Size Change: 0 B

Total Size: 865 kB

ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 1 kB 0 B
build/annotations/index.js 3.43 kB 0 B
build/api-fetch/index.js 3.39 kB 0 B
build/autop/index.js 2.58 kB 0 B
build/blob/index.js 620 B 0 B
build/block-directory/index.js 6.02 kB 0 B
build/block-directory/style-rtl.css 760 B 0 B
build/block-directory/style.css 760 B 0 B
build/block-editor/index.js 104 kB 0 B
build/block-editor/style-rtl.css 10.3 kB 0 B
build/block-editor/style.css 10.3 kB 0 B
build/block-library/editor-rtl.css 7.66 kB 0 B
build/block-library/editor.css 7.67 kB 0 B
build/block-library/index.js 116 kB 0 B
build/block-library/style-rtl.css 7.49 kB 0 B
build/block-library/style.css 7.49 kB 0 B
build/block-library/theme-rtl.css 669 B 0 B
build/block-library/theme.css 671 B 0 B
build/block-serialization-default-parser/index.js 1.65 kB 0 B
build/block-serialization-spec-parser/index.js 3.1 kB 0 B
build/blocks/index.js 57.6 kB 0 B
build/components/index.js 191 kB 0 B
build/components/style-rtl.css 15.5 kB 0 B
build/components/style.css 15.5 kB 0 B
build/compose/index.js 5.76 kB 0 B
build/core-data/index.js 10.5 kB 0 B
build/data-controls/index.js 1.03 kB 0 B
build/data/index.js 8.22 kB 0 B
build/date/index.js 5.37 kB 0 B
build/deprecated/index.js 772 B 0 B
build/dom-ready/index.js 568 B 0 B
build/dom/index.js 3.06 kB 0 B
build/edit-post/index.js 90.9 kB 0 B
build/edit-post/style-rtl.css 8.59 kB 0 B
build/edit-post/style.css 8.58 kB 0 B
build/edit-site/index.js 4.62 kB 0 B
build/edit-site/style-rtl.css 2.51 kB 0 B
build/edit-site/style.css 2.51 kB 0 B
build/edit-widgets/index.js 4.41 kB 0 B
build/edit-widgets/style-rtl.css 2.59 kB 0 B
build/edit-widgets/style.css 2.58 kB 0 B
build/editor/editor-styles-rtl.css 325 B 0 B
build/editor/editor-styles.css 327 B 0 B
build/editor/index.js 44.6 kB 0 B
build/editor/style-rtl.css 4.01 kB 0 B
build/editor/style.css 4 kB 0 B
build/element/index.js 4.45 kB 0 B
build/escape-html/index.js 733 B 0 B
build/format-library/index.js 7.6 kB 0 B
build/format-library/style-rtl.css 502 B 0 B
build/format-library/style.css 502 B 0 B
build/hooks/index.js 1.92 kB 0 B
build/html-entities/index.js 622 B 0 B
build/i18n/index.js 3.45 kB 0 B
build/is-shallow-equal/index.js 710 B 0 B
build/keyboard-shortcuts/index.js 2.3 kB 0 B
build/keycodes/index.js 1.68 kB 0 B
build/list-reusable-blocks/index.js 2.99 kB 0 B
build/list-reusable-blocks/style-rtl.css 226 B 0 B
build/list-reusable-blocks/style.css 226 B 0 B
build/media-utils/index.js 4.85 kB 0 B
build/notices/index.js 1.57 kB 0 B
build/nux/index.js 3.02 kB 0 B
build/nux/style-rtl.css 616 B 0 B
build/nux/style.css 613 B 0 B
build/plugins/index.js 2.54 kB 0 B
build/primitives/index.js 1.49 kB 0 B
build/priority-queue/index.js 879 B 0 B
build/redux-routine/index.js 2.84 kB 0 B
build/rich-text/index.js 14.3 kB 0 B
build/server-side-render/index.js 2.54 kB 0 B
build/shortcode/index.js 1.7 kB 0 B
build/token-list/index.js 1.27 kB 0 B
build/url/index.js 4 kB 0 B
build/viewport/index.js 1.61 kB 0 B
build/warning/index.js 1.14 kB 0 B
build/wordcount/index.js 1.18 kB 0 B

compressed-size-action

Copy link
Member

diegohaz left a comment

I was looking into this right now! Thanks for solving it! 😊

@ellatrix

This comment has been minimized.

Copy link
Member

ellatrix commented Feb 26, 2020

Did this start happening very recently?

@youknowriad

This comment has been minimized.

Copy link
Contributor Author

youknowriad commented Feb 26, 2020

@ellatrix I only saw it today.

@diegohaz

This comment has been minimized.

Copy link
Member

diegohaz commented Feb 26, 2020

It seems that it started on #19242, specifically on this line:

The old implementation was using componentDidMount, which is synchronous. Changing that to useLayoutEffect (the equivalent to cDM) also seems to fix this issue.

@youknowriad

This comment has been minimized.

Copy link
Contributor Author

youknowriad commented Feb 26, 2020

@diegohaz Seems like using useLayoutEffect would be a better fix as it's more generic.

@diegohaz

This comment has been minimized.

Copy link
Member

diegohaz commented Feb 26, 2020

We may lose some performance benefit. But, yeah! Using useLayoutEffect may prevent future issues if there is code expecting this to be sync.

@youknowriad

This comment has been minimized.

Copy link
Contributor Author

youknowriad commented Feb 26, 2020

I updated, let's see what travis says.

@youknowriad

This comment has been minimized.

Copy link
Contributor Author

youknowriad commented Feb 26, 2020

@diegohaz Looks like there's a JS unit test failure now, would you be able to help?

Storyshots use react-test-renderer underneath, which doesn't support ReactDOM.createPortal
@diegohaz

This comment has been minimized.

Copy link
Member

diegohaz commented Feb 26, 2020

It seems that storyshots is trying to create portal now that it's sync. Storyshots uses react-test-renderer underneath, which doesn't support portals.

Mocking ReactDOM.createPortal fixes this, but I'll see if there's a better way to handle it. I think it's better to simply disable storyshots for SlotFIll, as it doesn't add much value.

SlotFill uses ReactDOM.createPortal, which is not supported by Storyshots and react-test-renderer
@diegohaz

This comment has been minimized.

Copy link
Member

diegohaz commented Feb 26, 2020

Should be fixed now!

@youknowriad

This comment has been minimized.

Copy link
Contributor Author

youknowriad commented Feb 26, 2020

Thanks :) I'm questioning Storyshots more and more. I haven't seen any value so far.

@youknowriad youknowriad merged commit f5fdf0f into master Feb 26, 2020
3 checks passed
3 checks passed
build
Details
pull-request-automation
Details
Travis CI - Pull Request Build Passed
Details
@youknowriad youknowriad deleted the fix/intermittent-e2e-test branch Feb 26, 2020
@github-actions github-actions bot added this to the Gutenberg 7.7 milestone Feb 26, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

4 participants
You can’t perform that action at this time.