Files
50ohm/test/test_nonbreaking_spaces.py
T

80 lines
2.7 KiB
Python

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 = "Der Test befindet sich unter §2 vielleicht aber auch § 3."
target = "Der Test befindet sich unter § 2 vielleicht aber auch § 3."
assert render_html(input) == paragraph(target)
@pytest.mark.html
def test_three_points_html():
assertions = {
"Heute hatte ich ... zum Mittagessen.": "Heute hatte ich ... zum Mittagessen.",
"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_absatz_html():
input = "Der Test befindet sich unter Abs.2 vielleicht aber auch Abs. 3."
target = "Der Test befindet sich unter Abs. 2 vielleicht aber auch Abs. 3."
assert render_html(input) == paragraph(target)
@pytest.mark.html
def test_class_html():
input = "Ich lerne für Klasse A, Klasse E und Klasse N."
target = "Ich lerne für Klasse A, Klasse E und Klasse N."
assert render_html(input) == paragraph(target)
@pytest.mark.latex
def test_paragraph_latex():
input = "Der Test befindet sich unter §2 vielleicht aber auch § 3."
target = "\nDer Test befindet sich unter §~2 vielleicht aber auch §~3.\n"
assert mistletoe.markdown(input, FiftyOhmLaTeXRenderer) == target
@pytest.mark.latex
def test_three_points_latex():
assertions = {
"Heute hatte ich ... zum Mittagessen.": "\nHeute hatte ich~...~zum Mittagessen.\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_absatz_latex():
input = "Der Test befindet sich unter Abs.2 vielleicht aber auch Abs. 3."
target = "\nDer Test befindet sich unter Abs.~2 vielleicht aber auch Abs.~3.\n"
assert mistletoe.markdown(input, FiftyOhmLaTeXRenderer) == target
@pytest.mark.latex
def test_class_latex():
input = "Ich lerne für Klasse A, Klasse E und Klasse N."
target = "\nIch lerne für Klasse~A, Klasse~E und Klasse~N.\n"
assert mistletoe.markdown(input, FiftyOhmLaTeXRenderer) == target