我正在尝试对使用以下代码引发异常的功能进行测试:
use v6;
use Test;
plan *;
use lib "lib";
use Math::ConvergenceMethods;
sub f ($x) {return $x + 1;}
{
is-approx: bisection(&f, -2, 0), -1;
dies-ok: { bisection(&f, 3, 2) }, "Incorrect arguments";
}
done-testing;
Run Code Online (Sandbox Code Playgroud)
并且在我运行它时返回以下警告:
WARNINGS for /home/antonio/Code/perl6/Math-ConvergenceMethods/t/bisection.t:
Useless use of "-" in expression "-1" in sink context (line 13)
Useless use of constant string "Incorrect arguments" in sink context (lines 14, 14)
Run Code Online (Sandbox Code Playgroud)
我该如何解决?
该foo形式的声明:
foo: ...
Run Code Online (Sandbox Code Playgroud)
因此,您编写的语句与:
bisection(&f, -2, 0), -1;
Run Code Online (Sandbox Code Playgroud)
这将-1在接收器上下文中保留错误消息。
(该消息有点LTA,因为您的错误显然是您认为标签语法是一个调用语法的函数,而错误消息确实指示了错误in sink context--这Useless use of "-"是没有帮助的附加详细信息,可能会增加您的困惑)
另请参见这两个函数调用约定有什么区别?。
| 归档时间: |
|
| 查看次数: |
93 次 |
| 最近记录: |