Merge pull request #54 from gioele/tests-unify-sudo
test: Move calculation of sudo path to a shared function
diff --git a/test/54-assert-10-assert_character_exists.bats b/test/54-assert-10-assert_character_exists.bats
index e613ba9..c92a1a3 100644
--- a/test/54-assert-10-assert_character_exists.bats
+++ b/test/54-assert-10-assert_character_exists.bats
@@ -4,7 +4,7 @@
fixtures 'exist'
setup () {
- sudo mknod ${TEST_FIXTURE_ROOT}/dir/test_device c 89 1
+ bats_sudo mknod ${TEST_FIXTURE_ROOT}/dir/test_device c 89 1
}
teardown () {
rm -f ${TEST_FIXTURE_ROOT}/dir/test_device
diff --git a/test/54-assert-11-assert_character_not_exists.bats b/test/54-assert-11-assert_character_not_exists.bats
index b75e703..6586a7f 100644
--- a/test/54-assert-11-assert_character_not_exists.bats
+++ b/test/54-assert-11-assert_character_not_exists.bats
@@ -4,7 +4,7 @@
fixtures 'exist'
setup () {
- sudo mknod ${TEST_FIXTURE_ROOT}/dir/test_device c 89 1
+ bats_sudo mknod ${TEST_FIXTURE_ROOT}/dir/test_device c 89 1
}
teardown () {
rm -f ${TEST_FIXTURE_ROOT}/dir/test_device
diff --git a/test/55-assert-10-assert_block_exists.bats b/test/55-assert-10-assert_block_exists.bats
index d3e8357..2211a3b 100644
--- a/test/55-assert-10-assert_block_exists.bats
+++ b/test/55-assert-10-assert_block_exists.bats
@@ -3,7 +3,7 @@
fixtures 'exist'
setup () {
- sudo mknod ${TEST_FIXTURE_ROOT}/dir/blockfile b 89 1
+ bats_sudo mknod ${TEST_FIXTURE_ROOT}/dir/blockfile b 89 1
}
teardown () {
rm -f ${TEST_FIXTURE_ROOT}/dir/blockfile
@@ -59,4 +59,4 @@
[ "${lines[0]}" == '-- block special file does not exist --' ]
[ "${lines[1]}" == "path : ${TEST_FIXTURE_ROOT}/.." ]
[ "${lines[2]}" == '--' ]
-}
\ No newline at end of file
+}
diff --git a/test/55-assert-11-assert_block_not_exists.bats b/test/55-assert-11-assert_block_not_exists.bats
index d469f1a..9bff904 100644
--- a/test/55-assert-11-assert_block_not_exists.bats
+++ b/test/55-assert-11-assert_block_not_exists.bats
@@ -4,7 +4,7 @@
fixtures 'exist'
setup () {
- sudo mknod ${TEST_FIXTURE_ROOT}/dir/blockfile b 89 1
+ bats_sudo mknod ${TEST_FIXTURE_ROOT}/dir/blockfile b 89 1
}
teardown () {
rm -f ${TEST_FIXTURE_ROOT}/dir/blockfile
diff --git a/test/59-assert-10-assert_file_owner.bats b/test/59-assert-10-assert_file_owner.bats
index ec24089..f1a2f35 100644
--- a/test/59-assert-10-assert_file_owner.bats
+++ b/test/59-assert-10-assert_file_owner.bats
@@ -5,27 +5,15 @@
setup () {
touch ${TEST_FIXTURE_ROOT}/dir/owner ${TEST_FIXTURE_ROOT}/dir/notowner
- sudo_path=$(command -v sudo 2>/dev/null)
# There is PATH addition to /usr/sbin which won't come by default on bash3
# on macOS
chown_path=$(PATH="$PATH:/usr/sbin" command -v chown 2>/dev/null)
- if [[ "$(whoami)" != 'root' ]] && [ -x "$sudo_path" ]; then
- __cmd="$sudo_path $chown_path"
- else
- __cmd="$chown_path"
- fi
- $__cmd root ${TEST_FIXTURE_ROOT}/dir/owner
- $__cmd daemon ${TEST_FIXTURE_ROOT}/dir/notowner
+ bats_sudo "$chown_path" root ${TEST_FIXTURE_ROOT}/dir/owner
+ bats_sudo "$chown_path" daemon ${TEST_FIXTURE_ROOT}/dir/notowner
}
teardown () {
- sudo_path=$(command -v sudo 2>/dev/null)
- if [[ "$(whoami)" != 'root' ]] && [ -x "$sudo_path" ]; then
- __cmd="$sudo_path rm -f"
- else
- __cmd="rm -f"
- fi
- $__cmd ${TEST_FIXTURE_ROOT}/dir/owner ${TEST_FIXTURE_ROOT}/dir/notowner
+ bats_sudo rm -f ${TEST_FIXTURE_ROOT}/dir/owner ${TEST_FIXTURE_ROOT}/dir/notowner
}
# Correctness
diff --git a/test/59-assert-11-assert_not_file_owner.bats b/test/59-assert-11-assert_not_file_owner.bats
index 8c3b3d6..5518941 100644
--- a/test/59-assert-11-assert_not_file_owner.bats
+++ b/test/59-assert-11-assert_not_file_owner.bats
@@ -5,27 +5,15 @@
setup () {
touch ${TEST_FIXTURE_ROOT}/dir/owner ${TEST_FIXTURE_ROOT}/dir/notowner
- sudo_path=$(command -v sudo 2>/dev/null)
# There is PATH addition to /usr/sbin which won't come by default on bash3
# on macOS
chown_path=$(PATH="$PATH:/usr/sbin" command -v chown 2>/dev/null)
- if [[ "$(whoami)" != 'root' ]] && [ -x "$sudo_path" ]; then
- __cmd="$sudo_path $chown_path"
- else
- __cmd="$chown_path"
- fi
- $__cmd root ${TEST_FIXTURE_ROOT}/dir/owner
- $__cmd daemon ${TEST_FIXTURE_ROOT}/dir/notowner
+ bats_sudo "$chown_path" root ${TEST_FIXTURE_ROOT}/dir/owner
+ bats_sudo "$chown_path" daemon ${TEST_FIXTURE_ROOT}/dir/notowner
}
teardown () {
- sudo_path=$(command -v sudo 2>/dev/null)
- if [[ "$(whoami)" != 'root' ]] && [ -x "$sudo_path" ]; then
- __cmd="$sudo_path rm -f"
- else
- __cmd="rm -f"
- fi
- $__cmd ${TEST_FIXTURE_ROOT}/dir/owner ${TEST_FIXTURE_ROOT}/dir/notowner
+ bats_sudo rm -f ${TEST_FIXTURE_ROOT}/dir/owner ${TEST_FIXTURE_ROOT}/dir/notowner
}
# Correctness
diff --git a/test/test_helper.bash b/test/test_helper.bash
index bc90b0a..890c7ad 100644
--- a/test/test_helper.bash
+++ b/test/test_helper.bash
@@ -13,6 +13,15 @@
TEST_RELATIVE_FIXTURE_ROOT=$(bats_trim_filename "${TEST_FIXTURE_ROOT}" TEST_RELATIVE_FIXTURE_ROOT)
}
+bats_sudo() {
+ local sudo_path=$(command -v sudo 2>/dev/null)
+ if [[ "$(whoami)" != 'root' ]] && [ -x "$sudo_path" ]; then
+ "$sudo_path" "$@"
+ else
+ "$@"
+ fi
+}
+
export TEST_MAIN_DIR="${BATS_TEST_DIRNAME}/.."
export TEST_DEPS_DIR="${TEST_DEPS_DIR-${TEST_MAIN_DIR}/..}"