> Time::Mock
> Test::MockTime
我怎么能模拟Time::HiRes sub gettimeofday()?
PS我想为我的模块Time::ETA修复测试.现在我使用丑陋的黑客与睡眠“模拟”,sometimes it works and sometimes it does not.
解决方法 您可以使用二十一点和妓女编写自己的模块来模拟gettimeofday.通过Test :: MockTime的一些修改,我写道:#!/usr/bin/perlpackage myMockTime;use strict;use warnings;use Exporter qw( import );use Time::HiRes ();use Carp;our @fixed = ();our $accel = 1;our $otime = Time::HiRes::gettimeofday;our @EXPORT_OK = qw( set_fixed_time_of_day gettimeofday restore throttle);sub gettimeofday() { if ( @fixed ) { return wantarray ? @fixed : "$fixed[0].$fixed[1]"; } else { return $otime + ( ( Time::HiRes::gettimeofday - $otime ) * $accel ); }}sub set_fixed_time_of_day { my ( $time1,$time2 ) = @_; if ( ! defined $time1 || ! defined $time2 ) { croak('Incorrect usage'); } @fixed = ( $time1,$time2 );}sub throttle { my $self = shift @_; return $accel unless @_; my $new = shift @_; $new or croak('Can not set throttle to zero'); $accel = $new;}sub restore { @fixed = ();}1;
我认为它有很多错误和不完整的功能,在这方面工作
总结以上是内存溢出为你收集整理的如何模拟Perl模块Time :: HiRes全部内容,希望文章能够帮你解决如何模拟Perl模块Time :: HiRes所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)