feature: added tests for slides
This commit is contained in:
+1
-1
@@ -42,4 +42,4 @@ select = [
|
||||
|
||||
[tool.pytest.ini_options]
|
||||
addopts = ["--color=yes"]
|
||||
markers = ["html", "latex"]
|
||||
markers = ["html", "latex", "slide"]
|
||||
|
||||
@@ -48,9 +48,6 @@ class FiftyOhmHtmlSlideRenderer(FiftyOhmHtmlRenderer):
|
||||
qso += '</div>\n'
|
||||
return qso
|
||||
|
||||
def render_note(self, token):
|
||||
return f'<aside class="notes">\n{self.render_inner(token)}\n</aside>\n'
|
||||
|
||||
def render_tag(self, token):
|
||||
if token.tagtype == "fragment":
|
||||
return f'<div class="fragment">\n{self.render_inner(token)}\n</div>\n'
|
||||
@@ -60,6 +57,6 @@ class FiftyOhmHtmlSlideRenderer(FiftyOhmHtmlRenderer):
|
||||
return f'<div id="right">\n{self.render_inner(token)}\n</div>\n'
|
||||
elif token.tagtype == "note":
|
||||
return f'<aside class="notes">\n{self.render_inner(token)}\n</aside>\n'
|
||||
else:
|
||||
return "" # Ignore other tags in slide context
|
||||
|
||||
return "" # Ignore other tags in slide context anyway in tokenizer
|
||||
|
||||
|
||||
+12
-1
@@ -2,10 +2,11 @@ import mistletoe
|
||||
import pytest
|
||||
|
||||
from renderer.fifty_ohm_html_renderer import FiftyOhmHtmlRenderer
|
||||
from renderer.fifty_ohm_html_slide_renderer import FiftyOhmHtmlSlideRenderer
|
||||
|
||||
|
||||
@pytest.mark.html
|
||||
def test_table_html():
|
||||
def test_qso_html():
|
||||
assertions = {
|
||||
"<qso>\nfoo\n</qso>": FiftyOhmHtmlRenderer.render_tag_helper("qso", '<div class="qso_own">foo</div>\n', 1, 0)
|
||||
+ "\n",
|
||||
@@ -21,3 +22,13 @@ def test_table_html():
|
||||
|
||||
for assertion in assertions:
|
||||
assert mistletoe.markdown(assertion, FiftyOhmHtmlRenderer) == assertions[assertion]
|
||||
|
||||
@pytest.mark.slide
|
||||
def test_qso_slide():
|
||||
assertions = {
|
||||
"<qso>\nfoo\n> bar\n</qso>":
|
||||
'<div class="qso r-fit-text">\n<div class="qso_own fragment fade-right">foo</div>\n<div class="qso_other fragment fade-left">bar</div>\n</div>\n\n',
|
||||
}
|
||||
|
||||
for assertion in assertions:
|
||||
assert mistletoe.markdown(assertion, FiftyOhmHtmlSlideRenderer) == assertions[assertion]
|
||||
|
||||
@@ -2,6 +2,7 @@ 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
|
||||
|
||||
|
||||
@@ -103,3 +104,30 @@ def test_thematic_break_and_tag_latex():
|
||||
|
||||
for assertion in assertions:
|
||||
assert mistletoe.markdown(assertion, FiftyOhmLaTeXRenderer) == assertions[assertion]
|
||||
|
||||
|
||||
@pytest.mark.slide
|
||||
def test_tag_slide():
|
||||
assertions = {
|
||||
"<note>\nFoo\n</note>": '<aside class="notes">\n<p>Foo</p>\n</aside>\n\n',
|
||||
"<fragment>\nFoo\n</fragment>": '<div class="fragment">\n<p>Foo</p>\n</div>\n\n',
|
||||
"<left>\nFoo\n</left>": '<div id="left">\n<p>Foo</p>\n</div>\n\n',
|
||||
"<right>\nFoo\n</right>": '<div id="right">\n<p>Foo</p>\n</div>\n\n',
|
||||
}
|
||||
|
||||
for assertion in assertions:
|
||||
assert mistletoe.markdown(assertion, FiftyOhmHtmlSlideRenderer) == assertions[assertion]
|
||||
|
||||
@pytest.mark.slide
|
||||
def test_slide_break():
|
||||
assertions = {
|
||||
"---\na\n" : "<section>\n<p>a</p>\n</section>\n\n",
|
||||
"---\na\n---\nb\n" : "<section>\n<p>a</p>\n</section>\n\n<section>\n<p>b</p>\n</section>\n\n",
|
||||
"--- attention\na\n" : "<section data-background-color=\"#B8EAFF\">\n<p>a</p>\n</section>\n\n",
|
||||
"--- unit\na\n" : "<section data-background-color=\"#40C08C\">\n<p>a</p>\n</section>\n\n",
|
||||
"--- danger\na\n" : "<section data-background-color=\"#FF756D\">\n<p>a</p>\n</section>\n\n",
|
||||
"--- foo\na\n" : "<section foo>\n<p>a</p>\n</section>\n\n",
|
||||
}
|
||||
|
||||
for assertion in assertions:
|
||||
assert mistletoe.markdown(assertion, FiftyOhmHtmlSlideRenderer) == assertions[assertion]
|
||||
|
||||
Reference in New Issue
Block a user