summaryrefslogtreecommitdiff
path: root/spec/frontend/content_editor/services/markdown_serializer_spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/content_editor/services/markdown_serializer_spec.js')
-rw-r--r--spec/frontend/content_editor/services/markdown_serializer_spec.js33
1 files changed, 30 insertions, 3 deletions
diff --git a/spec/frontend/content_editor/services/markdown_serializer_spec.js b/spec/frontend/content_editor/services/markdown_serializer_spec.js
index cfd93c2df10..97f6d8f6334 100644
--- a/spec/frontend/content_editor/services/markdown_serializer_spec.js
+++ b/spec/frontend/content_editor/services/markdown_serializer_spec.js
@@ -11,6 +11,9 @@ import Division from '~/content_editor/extensions/division';
import Emoji from '~/content_editor/extensions/emoji';
import Figure from '~/content_editor/extensions/figure';
import FigureCaption from '~/content_editor/extensions/figure_caption';
+import FootnoteDefinition from '~/content_editor/extensions/footnote_definition';
+import FootnoteReference from '~/content_editor/extensions/footnote_reference';
+import FootnotesSection from '~/content_editor/extensions/footnotes_section';
import HardBreak from '~/content_editor/extensions/hard_break';
import Heading from '~/content_editor/extensions/heading';
import HorizontalRule from '~/content_editor/extensions/horizontal_rule';
@@ -28,7 +31,6 @@ 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 Text from '~/content_editor/extensions/text';
import markdownSerializer from '~/content_editor/services/markdown_serializer';
import { createTestEditor, createDocBuilder } from '../test_utils';
@@ -47,6 +49,9 @@ const tiptapEditor = createTestEditor({
DetailsContent,
Division,
Emoji,
+ FootnoteDefinition,
+ FootnoteReference,
+ FootnotesSection,
Figure,
FigureCaption,
HardBreak,
@@ -58,7 +63,6 @@ const tiptapEditor = createTestEditor({
Link,
ListItem,
OrderedList,
- Paragraph,
Strike,
Table,
TableCell,
@@ -66,7 +70,6 @@ const tiptapEditor = createTestEditor({
TableRow,
TaskItem,
TaskList,
- Text,
],
});
@@ -84,6 +87,9 @@ const {
descriptionItem,
descriptionList,
emoji,
+ footnoteDefinition,
+ footnoteReference,
+ footnotesSection,
figure,
figureCaption,
heading,
@@ -120,6 +126,9 @@ const {
emoji: { markType: Emoji.name },
figure: { nodeType: Figure.name },
figureCaption: { nodeType: FigureCaption.name },
+ footnoteDefinition: { nodeType: FootnoteDefinition.name },
+ footnoteReference: { nodeType: FootnoteReference.name },
+ footnotesSection: { nodeType: FootnotesSection.name },
hardBreak: { nodeType: HardBreak.name },
heading: { nodeType: Heading.name },
horizontalRule: { nodeType: HorizontalRule.name },
@@ -1108,4 +1117,22 @@ there
`.trim(),
);
});
+
+ it('correctly serializes footnotes', () => {
+ expect(
+ serialize(
+ paragraph(
+ 'Oranges are orange ',
+ footnoteReference({ footnoteId: '1', footnoteNumber: '1' }),
+ ),
+ footnotesSection(footnoteDefinition(paragraph('Oranges are fruits'))),
+ ),
+ ).toBe(
+ `
+Oranges are orange [^1]
+
+[^1]: Oranges are fruits
+ `.trim(),
+ );
+ });
});