import pytest
from renderer.fifty_ohm_html_renderer import FiftyOhmHtmlRenderer
from test.util import paragraph, render_html
@pytest.mark.html
def test_morse_html():
assertions = {
"[morse:a]": FiftyOhmHtmlRenderer.render_morse_helper([[1, 2]]),
"[morse:a] abc [morse:a]": f"{FiftyOhmHtmlRenderer.render_morse_helper([[1, 2]])} abc {FiftyOhmHtmlRenderer.render_morse_helper([[1, 2]])}", # noqa: E501
"[morse: a]": FiftyOhmHtmlRenderer.render_morse_helper([[1, 2]]),
"[morse: aaa]": FiftyOhmHtmlRenderer.render_morse_helper([[1, 2], [1, 2], [1, 2]]),
"[morse: a a]": FiftyOhmHtmlRenderer.render_morse_helper([[1, 2], [3], [1, 2]]),
"[morse: db0]": FiftyOhmHtmlRenderer.render_morse_helper([[2, 1, 1], [2, 1, 1, 1], [2, 2, 2, 2, 2]]),
}
for assertion in assertions:
assert render_html(assertion) == paragraph(assertions[assertion])
@pytest.mark.html
def test_swedish_letters_morse_html():
# Å .--.- Ä .-.- Ö ---.
assertions = {
"[morse: å]": FiftyOhmHtmlRenderer.render_morse_helper([[1, 2, 2, 1, 2]]),
"[morse: ä]": FiftyOhmHtmlRenderer.render_morse_helper([[1, 2, 1, 2]]),
"[morse: ö]": FiftyOhmHtmlRenderer.render_morse_helper([[2, 2, 2, 1]]),
"[morse: Å]": FiftyOhmHtmlRenderer.render_morse_helper([[1, 2, 2, 1, 2]]),
}
for assertion in assertions:
assert render_html(assertion) == paragraph(assertions[assertion])