diff options
Diffstat (limited to 'spec/frontend/content_editor/services/markdown_serializer_spec.js')
-rw-r--r-- | spec/frontend/content_editor/services/markdown_serializer_spec.js | 55 |
1 files changed, 11 insertions, 44 deletions
diff --git a/spec/frontend/content_editor/services/markdown_serializer_spec.js b/spec/frontend/content_editor/services/markdown_serializer_spec.js index 32193d97fd8..1bf23415052 100644 --- a/spec/frontend/content_editor/services/markdown_serializer_spec.js +++ b/spec/frontend/content_editor/services/markdown_serializer_spec.js @@ -1,4 +1,3 @@ -import Audio from '~/content_editor/extensions/audio'; import Blockquote from '~/content_editor/extensions/blockquote'; import Bold from '~/content_editor/extensions/bold'; import BulletList from '~/content_editor/extensions/bullet_list'; @@ -16,7 +15,7 @@ import FootnoteReference from '~/content_editor/extensions/footnote_reference'; import HardBreak from '~/content_editor/extensions/hard_break'; import Heading from '~/content_editor/extensions/heading'; import HorizontalRule from '~/content_editor/extensions/horizontal_rule'; -import HTMLMarks from '~/content_editor/extensions/html_marks'; +import Highlight from '~/content_editor/extensions/highlight'; import HTMLNodes from '~/content_editor/extensions/html_nodes'; import Image from '~/content_editor/extensions/image'; import InlineDiff from '~/content_editor/extensions/inline_diff'; @@ -34,53 +33,13 @@ import TableHeader from '~/content_editor/extensions/table_header'; import TableRow from '~/content_editor/extensions/table_row'; import TaskItem from '~/content_editor/extensions/task_item'; import TaskList from '~/content_editor/extensions/task_list'; -import Video from '~/content_editor/extensions/video'; import markdownSerializer from '~/content_editor/services/markdown_serializer'; import remarkMarkdownDeserializer from '~/content_editor/services/remark_markdown_deserializer'; -import { createTestEditor, createDocBuilder } from '../test_utils'; +import { createTiptapEditor, createDocBuilder } from '../test_utils'; jest.mock('~/emoji'); -const tiptapEditor = createTestEditor({ - extensions: [ - Audio, - Blockquote, - Bold, - BulletList, - Code, - CodeBlockHighlight, - DescriptionItem, - DescriptionList, - Details, - DetailsContent, - Emoji, - FootnoteDefinition, - FootnoteReference, - Figure, - FigureCaption, - HardBreak, - Heading, - HorizontalRule, - Image, - InlineDiff, - Italic, - Link, - ListItem, - OrderedList, - ReferenceDefinition, - Sourcemap, - Strike, - Table, - TableCell, - TableHeader, - TableRow, - TaskItem, - TaskList, - Video, - ...HTMLMarks, - ...HTMLNodes, - ], -}); +const tiptapEditor = createTiptapEditor([Sourcemap]); const { builders: { @@ -103,6 +62,7 @@ const { figureCaption, heading, hardBreak, + highlight, horizontalRule, image, inlineDiff, @@ -141,6 +101,7 @@ const { hardBreak: { nodeType: HardBreak.name }, heading: { nodeType: Heading.name }, horizontalRule: { nodeType: HorizontalRule.name }, + highlight: { markType: Highlight.name }, image: { nodeType: Image.name }, inlineDiff: { markType: InlineDiff.name }, italic: { nodeType: Italic.name }, @@ -202,6 +163,12 @@ describe('markdownSerializer', () => { ).toBe('{++30 lines+}{--10 lines-}'); }); + it('correctly serializes highlight', () => { + expect(serialize(paragraph('this is some ', highlight('highlighted'), ' text'))).toBe( + 'this is some <mark>highlighted</mark> text', + ); + }); + it('correctly serializes a line break', () => { expect(serialize(paragraph('hello', hardBreak(), 'world'))).toBe('hello\\\nworld'); }); |