Jay*_*yan 5 perl unit-testing mocking
我 Test::MockModule用来测试perl模块.其中一个调用需要检查状态$?以获取错误代码并对其进行程序检查.
我怎么能模仿结果呢? $?
被测代码如下所示.
my $result = CCUtil::cleartool($cmd);
if ( $? != 0 ) {
confess "Stream $stream not found( $result) ";
}
Run Code Online (Sandbox Code Playgroud)
api返回字符串并设置$?用于检查状态.
正常方法调用及其返回值使用如下所示进行更改
my $module = Test::MockModule->new('CCUtil');
$mockModule->mock(cleartool => sub {return 'stream not found'});
Run Code Online (Sandbox Code Playgroud)
现在模拟了方法调用.不是 - 的价值 - $?
my $module = Test::MockModule->new('CCUtil');
$mockModule->mock(cleartool => sub { $? = 0x0100; return 'stream not found' });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |