{
  "source": "assert.markdown",
  "modules": [
    {
      "textRaw": "断言 (assert)",
      "name": "断言_(assert)",
      "desc": "<pre><code>稳定度: 5 - 已锁定</code></pre>\n<p>This module is used for writing unit tests for your applications, you can\naccess it with <code>require(&apos;assert&apos;)</code>.\n\n</p>\n<p>此模块主要用于对您的程序进行单元测试，要使用它，请 <code>require(&apos;assert&apos;)</code>。\n\n</p>\n",
      "methods": [
        {
          "textRaw": "assert.fail(actual, expected, message, operator)",
          "type": "method",
          "name": "fail",
          "desc": "<p>Throws an exception that displays the values for <code>actual</code> and <code>expected</code> separated by the provided operator.\n\n</p>\n<p>抛出异常：显示为被 <code>operator</code> （分隔符）所分隔的 <code>actual</code> （实际值）和 <code>expected</code> （期望值）。\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "actual"
                },
                {
                  "name": "expected"
                },
                {
                  "name": "message"
                },
                {
                  "name": "operator"
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert(value, message), assert.ok(value, [message])",
          "type": "method",
          "name": "ok",
          "desc": "<p>Tests if value is truthy, it is equivalent to <code>assert.equal(true, !!value, message);</code>\n\n</p>\n<p>测试结果是否为真（true），相当于 <code>assert.equal(true, !!value, message);</code>\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "value"
                },
                {
                  "name": "message)"
                },
                {
                  "name": "assert.ok(value"
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.equal(actual, expected, [message])",
          "type": "method",
          "name": "equal",
          "desc": "<p>Tests shallow, coercive equality with the equal comparison operator ( <code>==</code> ).\n\n</p>\n<p>浅测试, 强制相等就像使用相等操作符( <code>==</code> ).\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "actual"
                },
                {
                  "name": "expected"
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.notEqual(actual, expected, [message])",
          "type": "method",
          "name": "notEqual",
          "desc": "<p>Tests shallow, coercive non-equality with the not equal comparison operator ( <code>!=</code> ).\n\n</p>\n<p>Tests shallow, coercive non-equality with the not equal comparison operator ( <code>!=</code> ).\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "actual"
                },
                {
                  "name": "expected"
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.deepEqual(actual, expected, [message])",
          "type": "method",
          "name": "deepEqual",
          "desc": "<p>Tests for deep equality.\n\n</p>\n<p>用于深度匹配测试。\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "actual"
                },
                {
                  "name": "expected"
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.notDeepEqual(actual, expected, [message])",
          "type": "method",
          "name": "notDeepEqual",
          "desc": "<p>Tests for any deep inequality.\n\n</p>\n<p>用于深度非匹配测试。\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "actual"
                },
                {
                  "name": "expected"
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.strictEqual(actual, expected, [message])",
          "type": "method",
          "name": "strictEqual",
          "desc": "<p>Tests strict equality, as determined by the strict equality operator ( <code>===</code> )\n\n</p>\n<p>用于严格相等匹配测试，由（<code>===</code>）的结果决定\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "actual"
                },
                {
                  "name": "expected"
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.notStrictEqual(actual, expected, [message])",
          "type": "method",
          "name": "notStrictEqual",
          "desc": "<p>Tests strict non-equality, as determined by the strict not equal operator ( <code>!==</code> )\n\n</p>\n<p>严格不相等测试, 强制不相等就像使用严格不相等操作符( <code>!==</code> ).\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "actual"
                },
                {
                  "name": "expected"
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.throws(block, [error], [message])",
          "type": "method",
          "name": "throws",
          "desc": "<p>Expects <code>block</code> to throw an error. <code>error</code> can be constructor, regexp or \nvalidation function.\n\n</p>\n<p>输出一个错误的 <code>block</code>。 <code>error</code> 可以是构造函数，正则或者验证函数\n\n</p>\n<p>Validate instanceof using constructor:\n\n</p>\n<p>使用验证实例的构造函数\n\n</p>\n<pre><code>assert.throws(\n  function() {\n    throw new Error(&quot;错误值&quot;);\n  },\n  Error\n);</code></pre>\n<p>Validate error message using RegExp:\n\n</p>\n<p>用正则表达式验证错误消息。\n\n</p>\n<pre><code>assert.throws(\n  function() {\n    throw new Error(&quot;错误值&quot;);\n  },\n  /value/\n);</code></pre>\n<p>Custom error validation:\n\n</p>\n<p>自定义错误校验：\n\n</p>\n<pre><code>assert.throws(\n  function() {\n    throw new Error(&quot;Wrong value&quot;);\n  },\n  function(err) {\n    if ( (err instanceof Error) &amp;&amp; /value/.test(err) ) {\n      return true;\n    }\n  },\n  &quot;unexpected error&quot;\n);</code></pre>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "block"
                },
                {
                  "name": "error",
                  "optional": true
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.doesNotThrow(block, [message])",
          "type": "method",
          "name": "doesNotThrow",
          "desc": "<p>Expects <code>block</code> not to throw an error, see assert.throws for details.\n\n</p>\n<p>预期 <code>block</code> 不会抛出错误，详见 assert.throws。\n\n</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "block"
                },
                {
                  "name": "message",
                  "optional": true
                }
              ]
            }
          ]
        },
        {
          "textRaw": "assert.ifError(value)",
          "type": "method",
          "name": "ifError",
          "desc": "<p>Tests if value is not a false value, throws if it is a true value. Useful when\ntesting the first argument, <code>error</code> in callbacks.\n\n\n</p>\n<p>测试值是否不为 false，当为 true 时抛出。常用于回调中第一个 error 参数的检查。</p>\n",
          "signatures": [
            {
              "params": [
                {
                  "name": "value"
                }
              ]
            }
          ]
        }
      ],
      "type": "module",
      "displayName": "断言 (assert)"
    }
  ]
}