from markdown_it import MarkdownIt, presets def test_highlight_arguments(): def highlight_func(str_, lang, attrs): assert lang == "a" assert attrs == "b c d" return "
==" + str_ + "==
"
conf = presets.commonmark.make()
conf["options"]["highlight"] = highlight_func
md = MarkdownIt(config=conf)
assert md.render("``` a b c d \nhl\n```") == "==hl\n==
\n"
def test_ordered_list_info():
def type_filter(tokens, type_):
return [t for t in tokens if t.type == type_]
md = MarkdownIt()
tokens = md.parse("1. Foo\n2. Bar\n20. Fuzz")
assert len(type_filter(tokens, "ordered_list_open")) == 1
tokens = type_filter(tokens, "list_item_open")
assert len(tokens) == 3
assert tokens[0].info == "1"
assert tokens[0].markup == "."
assert tokens[1].info == "2"
assert tokens[1].markup == "."
assert tokens[2].info == "20"
assert tokens[2].markup == "."
tokens = md.parse(" 1. Foo\n2. Bar\n 20. Fuzz\n 199. Flp")
assert len(type_filter(tokens, "ordered_list_open")) == 1
tokens = type_filter(tokens, "list_item_open")
assert len(tokens) == 4
assert tokens[0].info == "1"
assert tokens[0].markup == "."
assert tokens[1].info == "2"
assert tokens[1].markup == "."
assert tokens[2].info == "20"
assert tokens[2].markup == "."
assert tokens[3].info == "199"
assert tokens[3].markup == "."