# mock returned data *Package::method = sub { return 'some expected data' }; #### # mock a timeout, but wrap this in an eval/alarm my $a_long_time = 900; # seconds *Package::method = sub { sleep $a_long_time; return; }; #### # mock a die from timeout, but wrap this in an eval/alarm *Package::method = sub { die "Timed out!\n"; }; #### # mock a timeout exception, but wrap this in an eval/alarm *Package::method = sub { throw My::Exception::Timeout; };