gpt4 book ai didi

chai - 使用 chai 消除 no-unused-expressions linter 错误的好方法

转载 作者:行者123 更新时间:2023-12-05 07:29:55 27 4
gpt4 key购买 nike

在我的 Chai 测试中,我经常发现自己想要使用他们的断言,例如 .to.be.empty.to.be.true 等,因为我发现它们比 .to.be.length(1).to.be.equal(true) 更易读。但是,这会破坏我的 linter(我使用的是默认的 Airbnb linting)。

我可以使用 //disable-eslint-line 语法,但我必须将它添加到每一行,这样看起来很乏味。

我还阅读了关于 DirtyChai 的内容库,但这需要我回顾我的整个测试库,为它们添加括号,这似乎是我不应该做的事情,只是为了让我的 linter 通过一些它应该首先可以接受的东西。

有谁知道比我上面概述的方法更好的方法来处理这个问题?

最佳答案

您可以使用 eslint-disable 禁用整个文件的规则在相关文件的顶部:

/* eslint-disable no-unused-expressions */
expect(someTrueValue).to.be.true;

但是,将它添加到每个测试文件的顶部可能会很乏味。要对所有相关文件禁用此规则,您可以:

  1. 放一个新的.eslintc configuration file在与测试文件相同的目录中,配置为禁用该规则。这允许您对所有其他规则使用默认配置,同时忽略该规则,特别是仅针对该文件夹中的文件。 ESLint 称之为 Configuration Cascading .

    {
    "rules": {
    "no-unused-expressions": "off"
    }
    }
  2. 在主 .eslintrc 文件中使用 overrides 键到 disable rules for groups of files使用 glob 模式匹配:

    {
    "overrides": [
    {
    "files": ["*.test.js", "*.spec.js"],
    "rules": {
    "no-unused-expressions": "off"
    }
    }
    ]
    }

这还允许您禁用其他在测试中变得麻烦的规则,例如使用 rewire 时的 no-underscore-dangle .

关于chai - 使用 chai 消除 no-unused-expressions linter 错误的好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52521020/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com