-
Notifications
You must be signed in to change notification settings - Fork 18
Paste from Office support for Safari #16
Conversation
import multipleStylesSingleLineModel from './multiple-styles-single-line/model.word2016.html'; | ||
import multipleStylesMultilineModel from './multiple-styles-multiline/model.word2016.html'; | ||
|
||
export const fixtures = { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't really understand what's in fixtures
and browserFixtures
and how it is used later on. I see they are combined somehow... Could you perhaps add a README.md
to tests/
explaining what's the process of adding more tests using this system?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have added README.md
file describing briefly each part of testing mechanism and some short step-by-step guide on adding new tests 👍
tests/README.md
Outdated
@@ -0,0 +1,221 @@ | |||
# Normalization and integration testing in `Paste from Office` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# Normalization and integration testing in `Paste from Office` | |
# Testing this package |
Suggested merge commit message (convention)
Other: Support for pasting flat list and spacing handling for pasted content in Safari. Closes ckeditor/ckeditor5#2481. Closes ckeditor/ckeditor5#2480. Closes ckeditor/ckeditor5#2511.
Additional information
Bringing support for Safari required few things:
In the context of pasted content it was adapting function for recognizing Word content and handling some spacing issues.
The bigger change was in the way how tests are run. As Safari produces different input when content is pasted (different than Chrome, Firefox and Edge), the mechanism for switching fixtures depending on a browser was needed. Eventually, we have decided that all fixtures can be tested in each browser (thus simplifying the code by skipping browser detection and eliminating the need to run tests on all browsers after a change).
To satisfy the above, the special util was created which is used to generate tests based on provided fixtures (and this basically closes tickets related to testing infrastructure ckeditor/ckeditor5#2481 and ckeditor/ckeditor5#2480).
Note: As this PR was built on top of
t/8
, it can be merged only after #11 (t/8
PR) is merged.