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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
|
"""Test basic plugin creation functionality:
that they can be added and are called correctly
"""
from markdown_it import MarkdownIt
def inline_rule(state, silent):
print("plugin called")
return False
def test_inline_after(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.inline.ruler.after("text", "new_rule", inline_rule)
MarkdownIt().use(_plugin).parse("[")
assert "plugin called" in capsys.readouterr().out
def test_inline_before(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.inline.ruler.before("text", "new_rule", inline_rule)
MarkdownIt().use(_plugin).parse("a")
assert "plugin called" in capsys.readouterr().out
def test_inline_at(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.inline.ruler.at("text", inline_rule)
MarkdownIt().use(_plugin).parse("a")
assert "plugin called" in capsys.readouterr().out
def block_rule(state, startLine, endLine, silent):
print("plugin called")
return False
def test_block_after(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.block.ruler.after("hr", "new_rule", block_rule)
MarkdownIt().use(_plugin).parse("a")
assert "plugin called" in capsys.readouterr().out
def test_block_before(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.block.ruler.before("hr", "new_rule", block_rule)
MarkdownIt().use(_plugin).parse("a")
assert "plugin called" in capsys.readouterr().out
def test_block_at(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.block.ruler.at("hr", block_rule)
MarkdownIt().use(_plugin).parse("a")
assert "plugin called" in capsys.readouterr().out
def core_rule(state):
print("plugin called")
def test_core_after(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.core.ruler.after("normalize", "new_rule", core_rule)
MarkdownIt().use(_plugin).parse("a")
assert "plugin called" in capsys.readouterr().out
def test_core_before(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.core.ruler.before("normalize", "new_rule", core_rule)
MarkdownIt().use(_plugin).parse("a")
assert "plugin called" in capsys.readouterr().out
def test_core_at(capsys):
def _plugin(_md: MarkdownIt) -> None:
_md.core.ruler.at("normalize", core_rule)
MarkdownIt().use(_plugin).parse("a")
assert "plugin called" in capsys.readouterr().out
|