aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile1
-rwxr-xr-xtests/install-uninstall.sh49
2 files changed, 50 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 9b60c5b..d9765b7 100644
--- a/Makefile
+++ b/Makefile
@@ -36,6 +36,7 @@ run-tests: src/remembering-c.c
check: all run-tests
./run-tests
sh tests/cli-opts.sh
+ sh tests/install-uninstall.sh
sh tests/ranking.sh
sh tests/signals.sh
diff --git a/tests/install-uninstall.sh b/tests/install-uninstall.sh
new file mode 100755
index 0000000..facabbe
--- /dev/null
+++ b/tests/install-uninstall.sh
@@ -0,0 +1,49 @@
+#!/bin/sh
+set -u
+
+. aux/tests-lib.sh
+
+TEST_DESTDIR="$PWD/tests/destdirs/$(uuid)"
+PATH="$TEST_DESTDIR/usr/local/bin:$PATH"
+
+test_install_uninstall_targets() {
+ testing 'install uninstall targets'
+
+ N="$LINENO"
+ OUT="$(mktemp)"
+ ERR="$(mktemp)"
+ make DESTDIR="$TEST_DESTDIR" install 1>>"$OUT" 2>>"$ERR"
+ remembering -V 1>>"$OUT" 2>>"$ERR"
+ STATUS=$?
+ assert_status 0
+ assert_grep_stdout '^remembering-[0-9\.]+ [0-9-]+$'
+
+ N="$LINENO"
+ OUT="$(mktemp)"
+ ERR="$(mktemp)"
+ command -v remembering 1>"$OUT" 2>"$ERR"
+ STATUS=$?
+ assert_status 0
+ assert_stdout "$TEST_DESTDIR/usr/local/bin/remembering"
+
+ N="$LINENO"
+ OUT="$(mktemp)"
+ ERR="$(mktemp)"
+ find "$TEST_DESTDIR" -type f | wc -l 1>"$OUT" 2>"$ERR"
+ STATUS=$?
+ assert_status 0
+ assert_stdout '9'
+
+ N="$LINENO"
+ OUT="$(mktemp)"
+ ERR="$(mktemp)"
+ make DESTDIR="$TEST_DESTDIR" uninstall 1>>"$OUT" 2>>"$ERR"
+ find "$TEST_DESTDIR" -type f | wc -l 1>"$OUT" 2>"$ERR"
+ STATUS=$?
+ assert_status 0
+ assert_stdout '0'
+
+ test_ok
+}
+
+test_install_uninstall_targets