load ../lib/common @test "librerelease displays usage text" { rm -rf "$XDG_CONFIG_HOME" LC_ALL=C librerelease -h >"$tmpdir/stdout" 2>"$tmpdir/stderr" [[ "$(sed 1q "$tmpdir/stdout")" =~ Usage:.* ]] empty "$tmpdir/stderr" } @test "librerelease lists all files" { local workdir="$tmpdir/workdir" mkdir -p "$workdir/staging/repo1" "$workdir/staging/repo2/sub" touch \ "$workdir/staging/repo1/file1" \ "$workdir/staging/repo1/file2" \ "$workdir/staging/repo2/file with spaces" \ "$workdir/staging/repo2/sub/subfolder" LC_ALL=C librerelease -l &>"$tmpdir/list" || { status=$?; cat "$tmpdir/list"; return $status; } cat > "$tmpdir/list-correct" <<-eot -> repo1 file1 file2 -> repo2 file with spaces sub/subfolder eot diff "$tmpdir/list-correct" "$tmpdir/list" } @test "librerelease fails if gpgkey not set" { unset GPGKEY local workdir="$tmpdir/workdir" mkdir -p "$workdir/staging/repo1" "$workdir/staging/repo2/sub" touch \ "$workdir/staging/repo1/file1" \ "$workdir/staging/repo1/file2" \ "$workdir/staging/repo2/file with spaces" \ "$workdir/staging/repo2/sub/subfolder" LC_ALL=C librerelease -l >"$tmpdir/stdout" 2>"$tmpdir/stderr" || status=$? [[ $status != 0 ]] empty "$tmpdir/stdout" grep GPGKEY "$tmpdir/stderr" }