1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
"""
Testing the project
(C) Laurent Franceschetti 2024
"""
import pytest
from test.fixture import MacrosDocProject
CURRENT_project = '.'
def test_opt_in():
project = MacrosDocProject(CURRENT_project)
project.build()
# did not fail
assert not project.build_result.returncode
# ---------------------------
# which pages are rendered?
# ---------------------------
# test the config:
macros = project.macros_plugin
assert macros.render_by_default == False
page = project.get_page('render_this_one')
assert page.title == "Render (by name)"
assert page.is_markdown_rendered()
assert page.find_text(page.meta.signal), f"Did not find signal '{page.meta.signal}'"
print([page.source.markdown for page in project.pages.values()])
page2 = project.get_page('rendered/noname')
assert page2.file.src_uri == 'rendered/noname.md', f"is: {page2.file.src_uri}"
assert page2.find_text("0: Hello world")
assert page2.is_markdown_rendered()
assert not project.get_page('not_rendered/noname').is_markdown_rendered()
# exception in the meta:
exception_page = project.get_page('rendered/exception')
assert exception_page.meta.render_macros == False
assert not exception_page.is_markdown_rendered()
assert exception_page.find_text('macros_info')
|