ExUnit Assertions
在测试用例中,我们使用断言来处理错误。将它们的返回值与我们定义的匹配,测试将通过。就像我们有一个参数错误一样,我们使用这个:
1 | assert_raise ArgumentError,"argument error", fn -> |
这将起作用并且测试将通过。如果我们有
也是如此
但是如果我们有像这样的长错误消息:
1 2 | exception Postgrex.Error (ERROR 42703 (undefined_column): column j0.rating does not exist) |
我们如何在测试用例中处理这些长异常消息?
谢谢
如果你不想在异常中断言消息,你可以调用
1 2 3 | assert_raise Postgrex.Error, fn -> ... end |
如果你只想匹配异常信息的一部分,你可以传递一个正则表达式给
1 2 3 | assert_raise Postgrex.Error, ~r/undefined_column/, fn -> ... end |