editor-js / document-model

❗️WIP❗️
Apache License 2.0
10 stars 2 forks source link

feat(dom-adapters): Initial InlineToolAdapter implementation #59

Open gohabereg opened 9 months ago

github-actions[bot] commented 9 months ago

❌ Mutation testing hasn't passed score threshold

Report: https://dashboard.stryker-mutator.io/reports/github.com/editor-js/document-model/PR-59

Mutated files
src/utils/EventBus/index.ts
src/utils/EventBus/types/index.ts
src/entities/EditorDocument/index.ts
src/entities/EditorDocument/types/EditorDocumentConstructorParameters.ts
src/entities/inline-fragments/FormattingInlineNode/index.ts
src/entities/inline-fragments/ParentInlineNode/index.ts
src/index.ts
github-actions[bot] commented 9 months ago

Coverage report for ./packages/model

❌ An unexpected error occurred. For more details, check console

Error: The process '/usr/local/bin/yarn' failed with exit code 1
St.:grey_question:
Category Percentage Covered / Total
🟢 Statements 100% 579/579
🟢 Branches 99.27% 136/137
🟢 Functions 99.33% 149/150
🟢 Lines 100% 554/554

Test suite run failed

Failed tests: 5/347. Failed suites: 2/20.
``` ● ParentInlineNode › .format() › should emit TextFormattedEvent with inline fragment as data and affected range as index expect(received).toBeInstanceOf(expected) Expected constructor: TextFormattedEvent Received value has no prototype Received value: null 486 | node.format(tool, start, end, data); 487 | > 488 | expect(event).toBeInstanceOf(TextFormattedEvent); | ^ 489 | expect(event).toHaveProperty('detail', expect.objectContaining({ 490 | action: EventAction.Modified, 491 | index: [ [start, end] ], at Object. (src/entities/inline-fragments/specs/ParentInlineNode.spec.ts:488:21) ``` --- ``` ● FormattingInlineNode › .unformat() › should split node into tree if unformatting applied in the middle of the node TypeError: Method Map.prototype.entries called on incompatible receiver [object Map] 234 | const result = node.unformat(tool, start, end); 235 | > 236 | expect(result).toEqual([ | ^ 237 | expect.any(FormattingInlineNode), 238 | expect.any(TextInlineNode), 239 | expect.any(FormattingInlineNode), at Object. (src/entities/inline-fragments/specs/FormattingInlineNode.spec.ts:236:22) ● FormattingInlineNode › .unformat() › should remove unformatted node from parent if unformatting applied in the middle of the node expect(received).toHaveLength(expected) Expected length: 2 Received length: 3 Received array: [{"data": {}, "tool": "bold", Symbol(kEvents): Map {}, Symbol(events.maxEventTargetListeners): 10, Symbol(events.maxEventTargetListenersWarned): false, Symbol(kHandlers): Map {}}, {"value": "to"}, {"data": {}, "tool": "bold", Symbol(kEvents): Map {}, Symbol(events.maxEventTargetListeners): 10, Symbol(events.maxEventTargetListenersWarned): false, Symbol(kHandlers): Map {}}] 244 | const result = node.unformat(tool, start, end); 245 | > 246 | expect(parent.children).toHaveLength(result.length); | ^ 247 | }); 248 | 249 | it('should split node into two if unformatting applied at the end of the node', () => { at Object. (src/entities/inline-fragments/specs/FormattingInlineNode.spec.ts:246:31) ● FormattingInlineNode › .unformat() › should split node into two if unformatting applied at the end of the node expect(received).toEqual(expected) // deep equality - Expected - 2 + Received + 3 Array [ - Any<>, - Any, + ChildNode { + "value": "r.js is a block-styled editor", + }, ] 250 | const result = node.unformat(tool, end, node.length); 251 | > 252 | expect(result).toEqual([ | ^ 253 | expect.any(FormattingInlineNode), 254 | expect.any(TextInlineNode), 255 | ]); at Object. (src/entities/inline-fragments/specs/FormattingInlineNode.spec.ts:252:22) ● FormattingInlineNode › .unformat() › should remove unformatted node from parent if unformatting applied at the end of the node expect(received).toHaveLength(expected) Expected length: 1 Received length: 2 Received array: [{"data": {}, "tool": "bold", Symbol(kEvents): Map {}, Symbol(events.maxEventTargetListeners): 10, Symbol(events.maxEventTargetListenersWarned): false, Symbol(kHandlers): Map {}}, {"value": "r.js is a block-styled editor"}] 259 | const result = node.unformat(tool, end, node.length); 260 | > 261 | expect(parent.children).toHaveLength(result.length); | ^ 262 | }); 263 | }); 264 | at Object. (src/entities/inline-fragments/specs/FormattingInlineNode.spec.ts:261:31) ```

Report generated by 🧪jest coverage report action from 098d37a13fd60e797f9881db6283a2e8b9322581

neSpecc commented 9 months ago

update a branch please

github-actions[bot] commented 9 months ago

⏭️ No files to mutate for ./packages/dom-adapters

github-actions[bot] commented 9 months ago

Coverage report for ./packages/dom-adapters

St.:grey_question:
Category Percentage Covered / Total
🟢 Statements 100% 0/0
🟢 Branches 100% 0/0
🟢 Functions 100% 0/0
🟢 Lines 100% 0/0

Test suite run success

1 tests passing in 1 suite.

Report generated by 🧪jest coverage report action from 7f06e0f117b2086a5cf44a881dd40fad85fe1a7e

github-actions[bot] commented 9 months ago

⏭️ No files to mutate for ./packages/model

github-actions[bot] commented 9 months ago

Coverage report for ./packages/model

St.:grey_question:
Category Percentage Covered / Total
🟢 Statements 100% 579/579
🟢 Branches 99.27% 136/137
🟢 Functions 99.33% 149/150
🟢 Lines 100% 554/554

Test suite run success

348 tests passing in 20 suites.

Report generated by 🧪jest coverage report action from 7f06e0f117b2086a5cf44a881dd40fad85fe1a7e