我正在使用
我该如何模拟
被测试的代码如下。
方法调用现在被模拟了,而不是 --
Test::MockModule
来测试Perl模块。其中一个调用需要检查$?
的状态以获取错误代码,并且程序会对其进行检查。我该如何模拟
$?
的结果?被测试的代码如下。
my $result = CCUtil::cleartool($cmd);
if ( $? != 0 ) {
confess "Stream $stream not found( $result) ";
}
该API返回字符串并设置$?以检查状态。
可以使用以下方式更改正常方法调用及其返回值:
my $module = Test::MockModule->new('CCUtil');
$mockModule->mock(cleartool => sub {return 'stream not found'});
方法调用现在被模拟了,而不是 --
$?
的值。