import mistletoe import pytest from renderer.fifty_ohm_latex_renderer import FiftyOhmLaTeXRenderer from test.util import paragraph, render_html @pytest.mark.html def test_paragraph_html(): input = "Se 2§ och kanske även 3 §." target = "Se 2 § och kanske även 3 §." assert render_html(input) == paragraph(target) @pytest.mark.html def test_three_points_html(): assertions = { "Idag åt jag ... till lunch.": "Idag åt jag ... till lunch.", "Niemals hätte ich gedacht, dass...ich ...nicht kann.": "Niemals hätte ich gedacht, dass...ich ...nicht kann.", # noqa: E501 "Oh nein ...ein Pinguin.": "Oh nein ...ein Pinguin.", "Haha .. . Hahaha": "Haha .. . Hahaha", } for key, value in assertions.items(): assert render_html(key) == paragraph(value) @pytest.mark.html def test_chapter_and_ptsfs_html(): input = "Se 3 kap. 2 § och 4 st. samt PTSFS 2025:1 och Report 89." target = "Se 3 kap. 2 § och 4 st. samt PTSFS 2025:1 och Report 89." assert render_html(input) == paragraph(target) @pytest.mark.latex def test_paragraph_latex(): input = "Se 2§ och kanske även 3 §." target = "\nSe 2~§ och kanske även 3~§.\n" assert mistletoe.markdown(input, FiftyOhmLaTeXRenderer) == target @pytest.mark.latex def test_three_points_latex(): assertions = { "Idag åt jag ... till lunch.": "\nIdag åt jag~...~till lunch.\n", "Niemals hätte ich gedacht, dass...ich ...nicht kann.": "\nNiemals hätte ich gedacht, dass...ich~...nicht kann.\n", # noqa: E501 "Oh nein ...ein Pinguin.": "\nOh nein~...ein Pinguin.\n", "Haha .. . Hahaha": "\nHaha .. . Hahaha\n", } for key, value in assertions.items(): assert mistletoe.markdown(key, FiftyOhmLaTeXRenderer) == value @pytest.mark.latex def test_chapter_and_ptsfs_latex(): input = "Se 3 kap. 2 § och 4 st. samt PTSFS 2025:1 och Report 89." target = "\nSe 3~kap. 2~§ och 4~st. samt PTSFS~2025:1 och Report~89.\n" assert mistletoe.markdown(input, FiftyOhmLaTeXRenderer) == target