diff options
author | Luke Shumaker <LukeShu@sbcglobal.net> | 2013-06-08 14:29:01 -0600 |
---|---|---|
committer | Luke Shumaker <LukeShu@sbcglobal.net> | 2013-06-08 14:29:01 -0600 |
commit | bfb869816713ee2d635220b803cd8eb89f4cf444 (patch) | |
tree | 404b2422272986cd414881397410c26c5f18efde /test | |
parent | 18b74bdc32406fbe4b79c5efc0f1814683ba2b9a (diff) |
libreblacklist: fix a few bugs
- set -e didn't work in blacklist-update when followed by ||
- it prompted before overwriting the local blacklist
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=$? |