npm 包 mdast-util-assert 使用教程

阅读时长 6 分钟读完

简介

mdast-util-assert 是一个用于 mdast (Markdown AST)的断言库,用于验证 mdast 中的节点是否符合预期。它可用于编写测试用例,以确保您的自定义转换器或插件不会意外破坏现有的语法或结构。

安装

使用 npm 进行安装:

使用

mdast-util-assert 包含以下方法:

  • assert(node: Node, condition?: boolean): void
  • assertParent(node: Node, parentType: string, condition?: boolean): void
  • assertChildren(node: Node, childType: string, condition?: boolean): void
  • assertNode(node: Node, type: string, condition?: boolean): void
  • assertText(node: Node, value: string, condition?: boolean): void

这些方法都非常适合验证 mdast 中的节点,详细说明如下:

assert(node: Node, condition?: boolean): void

验证是否存在当前节点。如果 conditionfalse,则会触发 AssertionError 异常。

示例:

assertParent(node: Node, parentType: string, condition?: boolean): void

验证当前节点的父节点是否匹配指定的类型。如果 conditionfalse,则会触发 AssertionError 异常。

示例:

assertChildren(node: Node, childType: string, condition?: boolean): void

验证当前节点的子节点是否都匹配指定的类型。如果 conditionfalse,则会触发 AssertionError 异常。

示例:

-- -------------------- ---- -------
----- ------ - -----------------------------
----- - ----- ---------- ------- ---- - - -------------------------

----- ---- - ------
  -----------
    -------------------- -----
    ---------------
  ---
---

-------------------- ------- ------- -- ------------- --- ----- ----- -- ------------ -- -- ------- --- -------- -- --
-------------------------------- ------------- ------ -- ------

assertNode(node: Node, type: string, condition?: boolean): void

验证当前节点是否与指定的类型匹配。如果 conditionfalse,则会触发 AssertionError 异常。

示例:

assertText(node: Node, value: string, condition?: boolean): void

验证当前节点是否为文本节点,并且与指定的值匹配。如果 conditionfalse,则会触发 AssertionError 异常。

示例:

结论

mdast-util-assert 是一个强大的工具,用于验证 mdast 中的节点是否符合预期。如有必要,您可以使用它编写测试用例来确保自定义转换器或插件不会意外破坏现有的语法或结构。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f058d6a403f2923b035befc

纠错
反馈