是否可以在 Mox 期望中对格式字符串进行颜色比较?

问题描述 投票:0回答:1

当 ExUnit 测试用例中的字符串相等断言失败时,将提供颜色格式的输出。例如,对于:

test "my test" do
 assert "xyz" == "xwz"
end

我们得到

但是当我在 expect/4:

里面做的时候
test "my test" do
  expect(MyMock, :post, fn data ->
    assert "xyz" == "xwz"
  end)
end

没有格式化,但是:

知道是否有办法在 expect 内部完成相同的格式化吗?

PS:我真正想要的是一种在比较两个长字符串时获得良好字符串差异的方法。欢迎任何替代方案。

PS2:在 OSX 上使用 mox 1.0.2

elixir ex-unit
1个回答
-2
投票

如果你正在对错误进行字符串比较,我建议你完全避免使用 ANSI 颜色代码,因为它们会在输出中添加很多“噪音”。 ANSI 颜色代码无论如何都是可选的,因为并非每个系统都支持它们。

在您的

config/text.exs
(或您需要使用的任何环境)中,添加以下内容以禁用 ANSI 格式:

config :elixir, :ansi_enabled, false

查看 IO.ANSI.enabled?/0

的相应文档
© www.soinside.com 2019 - 2024. All rights reserved.