From d09dc11f5f8ac22b7b21877642b822b4b784e088 Mon Sep 17 00:00:00 2001 From: David Bolack Date: Sun, 14 Jan 2024 13:38:01 -0600 Subject: [PATCH] The remainder of the tests --- tests/markdown/marked-extensions.test.js | 25 ++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/tests/markdown/marked-extensions.test.js b/tests/markdown/marked-extensions.test.js index d4446de68..71bb47a30 100644 --- a/tests/markdown/marked-extensions.test.js +++ b/tests/markdown/marked-extensions.test.js @@ -21,9 +21,34 @@ describe('Dictionary Terms', ()=>{ expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('
My term
My First Definition
My Second Definition
My Third Definition
\n
'); }); + test('Multiline Definitions', function() { + const source = '**Example** :: V3 uses HTML *definition lists* to create "lists" with hanging indents.\n::Two::\nThree\n::Four\n\n'; + const rendered = Markdown.render(source); + expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('
Example
\n
V3 uses HTML definition lists to create “lists” with hanging indents.
\n
TwoThree
\n
Four
\n
'); + }); + + test('Multiple Definition Terms, single line, single definition', function() { + const source = 'Term 1::Definition of Term 1\nTerm 2::Definition of Term 2'; + const rendered = Markdown.render(source); + expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('
Term 1
Definition of Term 1
Term 2>
Definition of Term 2
\n
'); + }); + + test('Multiple Definition Terms, single line, multiple definitions', function() { + const source = 'Term 1::Definition 1 of Term 1::Definition 2 of Term 1\nTerm 2::Definition 1 of Term 2::Definition 2 of Term 2'; + const rendered = Markdown.render(source); + expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('
Term 1
Definition of Term 1
Term 2>
Definition of Term 2
\n
'); + }); + + test('Multiple Definition Terms, single definitions, multiple lines', function() { + const source = 'Term 1::Definition 1 of Term 1\n::Definition 2 of Term 1\nTerm 2::Definition of Term 2'; + const rendered = Markdown.render(source); + expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('
Term 1
Definition of Term 1
Term 2>
Definition of Term 2
\n
'); + }); + test('Multiple Definition Terms, multiple mixed-line definitions', function() { const source = 'Term 1::Definition 1 of Term 1\n::Definition 2 of Term 1::Definition 3 of Term 1\nTerm 2::Definition of Term 2'; const rendered = Markdown.render(source); + expect(rendered, `Input:\n${source}`, { showPrefix: false }).toBe('
Term 1
Definition of Term 1
Term 2>
Definition of Term 2
\n
'); }); });