#!/usr/bin/env roundup describe lib/conf.sh . ./test-common.sh it_sets_makepkg_vars_in_custom_file() { unset PKGDEST touch "$tmpdir/makepkg.conf" bash -c "$(printf '. $(librelib conf.sh); MAKEPKG_CONF=%q set_var makepkg PKGDEST /pkgdest' "$tmpdir/makepkg.conf")" . "$tmpdir/makepkg.conf" [[ $PKGDEST == /pkgdest ]] } it_figures_out_HOME_when_root() { require sudo || return 0 # This one is tricky, because it does the job too well, it will find # the actual HOME, instead of the test environment HOME. Therefore, we # will just check that [[ $HOME != /root ]] cd "$tmpdir" echo '. $(librelib conf.sh); echo "$LIBREHOME"' > test.sh LIBREHOME=$(testsudo bash ./test.sh) [[ $LIBREHOME != /root ]] } it_nests_LIBREUSER() { require sudo || return 0 [[ $USER != root ]] cd "$tmpdir" echo '. $(librelib conf.sh); echo "$LIBREUSER"' > test.sh LIBREUSER=$(testsudo bash ./test.sh) [[ $LIBREUSER == "$USER" ]] LIBREUSER=$(testsudo testsudo -u "$USER" bash ./test.sh) [[ $LIBREUSER == "$USER" ]] } it_respects_custom_HOME() { cd "$tmpdir" echo '. $(librelib conf.sh); echo "$LIBREHOME"' > test.sh export HOME=/foo LIBREHOME=$(bash ./test.sh) [[ $LIBREHOME == /foo ]] }