From 9777d0b96a1dacd5669d4c0b04eee3dd0d17af52 Mon Sep 17 00:00:00 2001 From: Jeremy Seago Date: Mon, 3 Feb 2014 16:01:10 -0600 Subject: [PATCH] exit with code 1 if no file found; provides test --- fasd | 3 ++- tests/test.sh | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100755 tests/test.sh diff --git a/fasd b/fasd index b1e64f4..6ffa254 100755 --- a/fasd +++ b/fasd @@ -577,7 +577,8 @@ fasd [-A|-D] [paths ...] local res res="$(fasd --query 2>> "$_FASD_SINK")" # query the database - [ $? -gt 0 ] && return + exitCode=$? + [ $exitCode -gt 0 ] && return $exitCode if [ 0 -lt ${_fasd_i:-0} ] 2>> "$_FASD_SINK"; then res="$(printf %s\\n "$res" | sort -n${R} | \ sed -n "$_fasd_i"'s/^[^ ]*[ ]*//p')" diff --git a/tests/test.sh b/tests/test.sh new file mode 100755 index 0000000..7183858 --- /dev/null +++ b/tests/test.sh @@ -0,0 +1,23 @@ +#!/bin/zsh + +fasd -f notARealFile.txt +failed=$? +fasd -f .vimrc +success=$? +fasd -d ~ +success_cd=$? + +if [[ $failed == 1 ]]; then + if [[ $success == 0 ]]; then + if [[ $success_cd == 0 ]]; then + echo Tests passed! + else + echo Error: ~ should have been found! + fi + else + echo Error: .vimrc should have been found! + fi +else + echo Error: notARealFile.txt should not have been found! +fi +