summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGard Spreemann <gspr@nonempty.org>2020-03-13 13:22:55 +0100
committerGard Spreemann <gspr@nonempty.org>2020-03-13 13:22:55 +0100
commit1e8825c99e3c6397ee41fd08d95b63f2038196e8 (patch)
tree66cee6991c3d3d25c9324c6ceb5e053f74330573
parent0717ecf1f8963ba94bed6f3c77d4442c1d632699 (diff)
Add test for phat-utils.
-rw-r--r--debian/tests/control2
-rw-r--r--debian/tests/reference/single_triangle.txt4
-rwxr-xr-xdebian/tests/utils.sh32
3 files changed, 38 insertions, 0 deletions
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 0000000..5b92a47
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,2 @@
+Tests: utils.sh
+Depends: phat-utils, shunit2 \ No newline at end of file
diff --git a/debian/tests/reference/single_triangle.txt b/debian/tests/reference/single_triangle.txt
new file mode 100644
index 0000000..04ffc17
--- /dev/null
+++ b/debian/tests/reference/single_triangle.txt
@@ -0,0 +1,4 @@
+3
+1 3
+2 4
+5 6
diff --git a/debian/tests/utils.sh b/debian/tests/utils.sh
new file mode 100755
index 0000000..6798f82
--- /dev/null
+++ b/debian/tests/utils.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+files="single_triangle"
+reprs="vector_vector vector_heap vector_set vector_list full_pivot_column sparse_pivot_column heap_pivot_column bit_tree_pivot_column"
+algos="standard twist chunk chunk_sequential spectral_sequence row"
+
+oneTimeSetUp() {
+ set -u
+}
+
+parse() {
+ tail -n +2 $1 | sort
+}
+
+test() {
+ for file in $files
+ do
+ for repr in $reprs
+ do
+ for algo in $algos
+ do
+ tmpfile=$(mktemp -p $AUTOPKGTEST_TMP)
+ ( set -x; /usr/bin/phat --ascii --${repr} --${algo} examples/${file}.dat ${tmpfile} )
+ assertEquals "Non-zero return code." 0 $?
+ [ "$(parse debian/tests/reference/${file}.txt)" == "$(parse $tmpfile)" ]
+ assertEquals "Wrong result." 0 $?
+ done
+ done
+ done
+}
+
+. shunit2