import mistletoe import pytest from renderer.fifty_ohm_html_renderer import FiftyOhmHtmlRenderer from renderer.fifty_ohm_html_slide_renderer import FiftyOhmHtmlSlideRenderer from renderer.fifty_ohm_latex_renderer import FiftyOhmLaTeXRenderer @pytest.mark.html def test_thematic_break_html(): assertions = { "---": '\n', "---\n---": '\n\n', } for assertion in assertions: assert mistletoe.markdown(assertion, FiftyOhmHtmlRenderer) == assertions[assertion] @pytest.mark.html def test_tag_html(): assertions = { "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("margin", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("indepth", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("margin", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("tip", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("person", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("tip", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("indepth", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("unit", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("danger", "

Foo

", 1, 0) + "\n", "\nFoo\n": FiftyOhmHtmlRenderer.render_tag_helper("wordorigin", "

Foo

", 1, 0) + "\n", "\nFoo\n": "

Foo

\n", "\nFoo\n": "", } for assertion in assertions: assert mistletoe.markdown(assertion, FiftyOhmHtmlRenderer) == assertions[assertion] @pytest.mark.html def test_thematic_break_and_tag_html(): assertions = { "---\n\nFoo\n": '\n' + FiftyOhmHtmlRenderer.render_tag_helper("margin", "

Foo

", 1, 1) + "\n", "---\n\nFoo\n\n\nFoo\n": '\n' + FiftyOhmHtmlRenderer.render_tag_helper("margin", "

Foo

", 1, 1) + "\n" + FiftyOhmHtmlRenderer.render_tag_helper("margin", "

Foo

", 2, 1) + "\n", "---\n\nFoo\n\n---\n\nFoo\n": '\n' + FiftyOhmHtmlRenderer.render_tag_helper("margin", "

Foo

", 1, 1) + '\n\n' + FiftyOhmHtmlRenderer.render_tag_helper("margin", "

Foo

", 2, 2) + "\n", } for assertion in assertions: assert mistletoe.markdown(assertion, FiftyOhmHtmlRenderer) == assertions[assertion] @pytest.mark.latex def test_thematic_break_latex(): assertions = { "---": "", "---\n---": "", } for assertion in assertions: assert mistletoe.markdown(assertion, FiftyOhmLaTeXRenderer) == assertions[assertion] @pytest.mark.latex def test_tag_latex(): assertions = { "\nFoo\n": "\Margin{\nFoo\n}", "\nFoo\n": "\MarginDanger{\nFoo\n}", "\nFoo\n": "\MarginWarning{\nFoo\n}", "\nFoo\n": "\MarginAttention{\nFoo\n}", "\nFoo\n": "\MarginTip{\nFoo\n}", "\nFoo\n": "\WebTip{\nFoo\n}", "\nFoo\n": "\MarginUnit{\nFoo\n}", "\nFoo\n": "\MarginInDepth{\nFoo\n}", "\nFoo\n": "\MarginWebInDepth{\nFoo\n}", "\nFoo\n": "\WebMargin{\nFoo\n}", "\nFoo\n": "\FullWidth{\nFoo\n}", "\nFoo\n": "\nFoo\n", "\nFoo\n": "", } for assertion in assertions: assert mistletoe.markdown(assertion, FiftyOhmLaTeXRenderer) == assertions[assertion] @pytest.mark.latex def test_thematic_break_and_tag_latex(): assertions = { "---\n\nFoo\n": "\Margin{\nFoo\n}", "---\n\nFoo\n\n\nFoo\n": "\Margin{\nFoo\n}\Margin{\nFoo\n}", "---\n\nFoo\n\n---\n\nFoo\n": "\Margin{\nFoo\n}\Margin{\nFoo\n}", } for assertion in assertions: assert mistletoe.markdown(assertion, FiftyOhmLaTeXRenderer) == assertions[assertion] @pytest.mark.slide def test_tag_slide(): assertions = { "\nFoo\n": '\n\n', "\nFoo\n": '
\n

Foo

\n
\n\n', "\nFoo\n": '
\n

Foo

\n
\n\n', "\nFoo\n": '\n\n', } for assertion in assertions: assert mistletoe.markdown(assertion, FiftyOhmHtmlSlideRenderer) == assertions[assertion] @pytest.mark.slide def test_slide_break(): assertions = { "---\na\n" : "
\n

a

\n
\n\n", "---\na\n---\nb\n" : "
\n

a

\n
\n\n
\n

b

\n
\n\n", "--- attention\na\n" : "
\n

a

\n
\n\n", "--- unit\na\n" : "
\n

a

\n
\n\n", "--- danger\na\n" : "
\n

a

\n
\n\n", "--- foo\na\n" : "
\n

a

\n
\n\n", } for assertion in assertions: assert mistletoe.markdown(assertion, FiftyOhmHtmlSlideRenderer) == assertions[assertion]