aboutsummaryrefslogtreecommitdiff
path: root/tests/install-uninstall.sh
blob: c24a118825cafe7949cb1488173486e537ef84af (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
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"
	git permalink -V 1>>"$OUT" 2>>"$ERR"
	STATUS=$?
	assert_status 0
	assert_grep_stdout '^git-permalink-[0-9\.]+ [0-9-]+$'

	N="$LINENO"
	OUT="$(mktemp)"
	ERR="$(mktemp)"
	command -v git-permalink 1>"$OUT" 2>"$ERR"
	STATUS=$?
	assert_status 0
	assert_stdout "$TEST_DESTDIR/usr/local/bin/git-permalink"

	N="$LINENO"
	OUT="$(mktemp)"
	ERR="$(mktemp)"
	find "$TEST_DESTDIR" -type f | wc -l 1>"$OUT" 2>"$ERR"
	STATUS=$?
	assert_status 0
	assert_stdout '5'

	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