import pytest from gfm_alerts_to_admonitions import gfm_alert_to_admonition from markdown_it import MarkdownIt @pytest.mark.parametrize("kind", ["tip", "note", "important", "warning", "caution"]) def test_parse(data_regression, kind): input = f"> [!{kind.upper()}]\n> This is an *alert*" md = MarkdownIt("commonmark").use(gfm_alert_to_admonition) tokens = md.parse(input) data_regression.check([t.as_dict() for t in tokens]) def test_case(): def make_input(kind): return f"> [!{kind}]\n> tip" md = MarkdownIt("commonmark").use(gfm_alert_to_admonition) reference = [t.as_dict() for t in md.parse(make_input("TIP"))] lower = [t.as_dict() for t in md.parse(make_input("tip"))] mixed = [t.as_dict() for t in md.parse(make_input("tIp"))] assert lower == reference assert mixed == reference