diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/lib-blacklist-test.sh | 49 |
1 files changed, 46 insertions, 3 deletions
diff --git a/test/lib-blacklist-test.sh b/test/lib-blacklist-test.sh index 1432ff6..049a2a7 100644 --- a/test/lib-blacklist-test.sh +++ b/test/lib-blacklist-test.sh @@ -2,13 +2,14 @@ describe libreblacklist +. ./test-common.sh + before() { - tmpdir=$(mktemp -d --tmpdir test-libreblacklist.XXXXXXXXXXXX) - stat=0 + _before } after() { - rm -rf -- "$tmpdir" "$XDG_CACHE_HOME" "$XDG_CONFIG_HOME" + _after } it_works_with_just_pkgname() { @@ -66,6 +67,48 @@ it_fails_cat_when_there_is_no_blacklist_or_network() { [[ -n "$(cat $tmpdir/stderr)" ]] } +it_fails_update_when_BLACKLIST_is_unset() { + mkdir -p $XDG_CONFIG_HOME/libretools + echo "BLACKLIST=" >$XDG_CONFIG_HOME/libretools/libretools.conf + + libreblacklist update >$tmpdir/stdout 2>$tmpdir/stderr || stat=$? + + [[ $stat != 0 ]] + [[ -z "$(cat $tmpdir/stdout)" ]] + [[ -n "$(cat $tmpdir/stderr)" ]] +} + +it_fails_cat_when_syntax_error_in_conf() { + mkdir -p $XDG_CONFIG_HOME/libretools + # there is a stray single quote in there + echo "BLACKLIST='https://repo.parabolagnulinux.org/docs/blacklist.txt" >$XDG_CONFIG_HOME/libretools/libretools.conf + + libreblacklist cat >$tmpdir/stdout 2>$tmpdir/stderr || stat=$? + + [[ $stat != 0 ]] + [[ -z "$(cat $tmpdir/stdout)" ]] + [[ -n "$(cat $tmpdir/stderr)" ]] +} + +it_downloads_the_blacklist_as_needed() { + require network || return 0 + mkdir -p $XDG_CONFIG_HOME/libretools + echo "BLACKLIST=https://repo.parabolagnulinux.org/docs/blacklist.txt" >$XDG_CONFIG_HOME/libretools/libretools.conf + + libreblacklist cat >$tmpdir/stdout 2>$tmpdir/stderr + + [[ -n "$(cat $tmpdir/stdout)" ]] +} + +it_downloads_the_blacklist_repeatedly() { + require network || return 0 + mkdir -p $XDG_CONFIG_HOME/libretools + echo "BLACKLIST=https://repo.parabolagnulinux.org/docs/blacklist.txt" >$XDG_CONFIG_HOME/libretools/libretools.conf + + libreblacklist update + libreblacklist update +} + it_displays_help_and_fails_with_no_args() { libreblacklist >$tmpdir/stdout 2>$tmpdir/stderr || stat=$? |