This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
fix dist/Time-HiRes/t/*.t that assumed '.' in @INC
[perl5.git] / dist / Time-HiRes / t / sleep.t
CommitLineData
90e44bf6
Z
1use strict;
2
c4a535af 3use Test::More tests => 4;
465db51d 4BEGIN { push @INC, '.' }
90e44bf6
Z
5use t::Watchdog;
6
7BEGIN { require_ok "Time::HiRes"; }
8
9use Config;
10
11my $xdefine = '';
1ae6ead9 12if (open(XDEFINE, "<", "xdefine")) {
90e44bf6
Z
13 chomp($xdefine = <XDEFINE> || "");
14 close(XDEFINE);
15}
16
17my $can_subsecond_alarm =
18 defined &Time::HiRes::gettimeofday &&
19 defined &Time::HiRes::ualarm &&
20 defined &Time::HiRes::usleep &&
21 ($Config{d_ualarm} || $xdefine =~ /-DHAS_UALARM/);
22
23eval { Time::HiRes::sleep(-1) };
24like $@, qr/::sleep\(-1\): negative time not invented yet/,
25 "negative time error";
26
27SKIP: {
28 skip "no subsecond alarm", 2 unless $can_subsecond_alarm;
29 my $f = Time::HiRes::time;
c4a535af 30 print("# time...$f\n");
90e44bf6
Z
31 ok 1;
32
33 my $r = [Time::HiRes::gettimeofday()];
34 Time::HiRes::sleep (0.5);
c4a535af 35 printf("# sleep...%s\n", Time::HiRes::tv_interval($r));
90e44bf6
Z
36 ok 1;
37}
38
391;