]> git.vpit.fr Git - perl/modules/Linux-SysInfo.git/blobdiff - t/10-standard.t
More robust tests
[perl/modules/Linux-SysInfo.git] / t / 10-standard.t
index 1642ed4b294d6b4dd3bd4b8ac4f028dbb4dd8bbd..2442dff7666d184d658386d085748320d0ebbf9d 100644 (file)
@@ -7,9 +7,21 @@ use Test::More tests => 12 * 5;
 
 use Linux::SysInfo qw/sysinfo/;
 
-for (1 .. 5) {
- my $si = sysinfo;
- ok(defined $si);
+SKIP: {
+ for my $run (0 .. 4) {
+  my $si = sysinfo;
+  skip 'system error (sysinfo returned undef)' => (5 - $run) * 12
+                                                             unless defined $si;
+  is ref($si), 'HASH', "sysinfo returns a hash reference at run $run";
 
- ok(exists $si->{$_}) for qw/uptime load1 load5 load15 totalram freeram sharedram bufferram totalswap freeswap procs/;
+  for (qw/uptime load1 load5 load15 procs
+          totalram freeram sharedram bufferram totalswap freeswap/) {
+   if (defined $si->{$_}) {
+    like $si->{$_}, qr/^\d+(?:\.\d+)?$/,
+                                       "key $_ looks like a number at run $run";
+   } else {
+    fail "key $_ isn't defined at run $run";
+   }
+  }
+ }
 }