summaryrefslogtreecommitdiff
path: root/testcases/010-cpu-usage
diff options
context:
space:
mode:
authorEmeric Planet <emeric.planet@datadoghq.com>2017-08-29 19:01:30 +0200
committerMichael Stapelberg <stapelberg@users.noreply.github.com>2017-08-29 19:01:30 +0200
commit884e4da6730a31fc7a5ef892fb9cb061baaf5f6c (patch)
treea35256792803bfa408faf3d46f1ca2f9cb491b80 /testcases/010-cpu-usage
parentca9bee8b885e810fd849abcb9b544b487636854c (diff)
Fix CPU unit tests (#239)
Support any amount of available cores on testing machine.
Diffstat (limited to 'testcases/010-cpu-usage')
-rw-r--r--testcases/010-cpu-usage/cleanup.pl15
-rwxr-xr-xtestcases/010-cpu-usage/expected_output.pl12
-rw-r--r--testcases/010-cpu-usage/expected_output.txt1
-rwxr-xr-xtestcases/010-cpu-usage/setup.pl23
-rw-r--r--testcases/010-cpu-usage/stat3
5 files changed, 50 insertions, 4 deletions
diff --git a/testcases/010-cpu-usage/cleanup.pl b/testcases/010-cpu-usage/cleanup.pl
new file mode 100644
index 0000000..ac341be
--- /dev/null
+++ b/testcases/010-cpu-usage/cleanup.pl
@@ -0,0 +1,15 @@
+#!/usr/bin/env perl
+
+use v5.10;
+use strict;
+use warnings;
+
+if ($#ARGV != 0 || ! -d $ARGV[0]) {
+ say "Error with cleanup script: argument not provided or not a directory";
+ exit 1;
+}
+
+my $output_file = "$ARGV[0]/stat";
+if (-f $output_file) {
+ unlink $output_file;
+}
diff --git a/testcases/010-cpu-usage/expected_output.pl b/testcases/010-cpu-usage/expected_output.pl
new file mode 100755
index 0000000..d14c908
--- /dev/null
+++ b/testcases/010-cpu-usage/expected_output.pl
@@ -0,0 +1,12 @@
+#!/usr/bin/env perl
+
+use v5.10;
+use strict;
+use warnings;
+
+chomp(my $cpu_count = `grep -c -P '^processor\\s+:' /proc/cpuinfo`);
+if ($cpu_count == 1) {
+ print "all: 100% CPU_0: 100% CPU_1: \n";
+} else {
+ print "all: 75% CPU_0: 100% CPU_1: 50%\n";
+}
diff --git a/testcases/010-cpu-usage/expected_output.txt b/testcases/010-cpu-usage/expected_output.txt
deleted file mode 100644
index 336596e..0000000
--- a/testcases/010-cpu-usage/expected_output.txt
+++ /dev/null
@@ -1 +0,0 @@
-all: 75% CPU_0: 100% CPU_1: 50%
diff --git a/testcases/010-cpu-usage/setup.pl b/testcases/010-cpu-usage/setup.pl
new file mode 100755
index 0000000..8123374
--- /dev/null
+++ b/testcases/010-cpu-usage/setup.pl
@@ -0,0 +1,23 @@
+#!/usr/bin/env perl
+
+use v5.10;
+use strict;
+use warnings;
+
+if ($#ARGV != 0 || ! -d $ARGV[0]) {
+ say "Error with setup script: argument not provided or not a directory";
+ exit 1;
+}
+
+chomp(my $cpu_count = `grep -c -P '^processor\\s+:' /proc/cpuinfo`);
+my $output_file = "$ARGV[0]/stat";
+open(my $fh, '>', $output_file) or die "Could not open file '$output_file' $!";
+print $fh "cpu 0 0 0 0 0 0 0 0 0 0\n";
+print $fh "cpu0 100 0 0 0 0 0 0 0 0 0\n";
+if ($cpu_count > 1) {
+ print $fh "cpu1 50 0 0 50 0 0 0 0 0 0\n";
+ for (my $i = 2; $i <= $cpu_count; $i++) {
+ print $fh "cpu$i 0 0 0 0 0 0 0 0 0 0\n";
+ }
+}
+close $fh;
diff --git a/testcases/010-cpu-usage/stat b/testcases/010-cpu-usage/stat
deleted file mode 100644
index 6fbc94e..0000000
--- a/testcases/010-cpu-usage/stat
+++ /dev/null
@@ -1,3 +0,0 @@
-cpu 0 0 0 0 0 0 0 0 0 0
-cpu0 100 0 0 0 0 0 0 0 0 0
-cpu1 50 0 0 50 0 0 0 0 0 0