diff options
Diffstat (limited to 'bin/core/imag-store/tests/002-retrieve_test.sh')
-rw-r--r-- | bin/core/imag-store/tests/002-retrieve_test.sh | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/bin/core/imag-store/tests/002-retrieve_test.sh b/bin/core/imag-store/tests/002-retrieve_test.sh new file mode 100644 index 00000000..e7ba5962 --- /dev/null +++ b/bin/core/imag-store/tests/002-retrieve_test.sh @@ -0,0 +1,85 @@ +#!/usr/bin/env bash + +source $(dirname ${BASH_SOURCE[0]})/../../tests/utils.sh +source $(dirname ${BASH_SOURCE[0]})/utils.sh + +std_header() { + cat <<EOS +--- +[imag] +links = [] +version = "0.4.0" +--- +EOS +} + +retrieve() { + silent imag-store retrieve $* +} + +test_retrieve_nothing() { + local id="test-retrieve_nothing" + + imag-store create -p ${id} || { err "create failed"; return 1; } + + out "Going to test the retrieve functionality now" + local zero_out="$(retrieve --id ${id})" || return 1 + out "Retrieving for zero_out finished" + + if [[ ! -z "$zero_out" ]]; then + err "Expected zero output, got '$zero_out'" + return 1 + fi +} + +test_retrieve_content() { + local id="test-retrieve_simple" + + imag-store create -p ${id} || { err "create failed"; return 1; } + + out "Going to test the retrieve functionality now" + + local content_out="$(retrieve --id ${id} --content)" || return 1 + out "Retrieving for content_out finished" + + if [[ ! -z "$content_out" ]]; then + err "Expected content output == zero output, got '$content_out'" + return 1 + fi +} + +test_retrieve_header() { + local id="test-retrieve_simple" + + imag-store create -p ${id} || { err "create failed"; return 1; } + + out "Going to test the retrieve functionality now" + local header_out="$(retrieve --id ${id} --header)" + out "Retrieving for header_out finished" + + if [[ ! "$header_out" != "$(std_header)" ]]; then + err "Expected header as output, got '$header_out'" + return 1 + fi +} + +test_retrieve_raw() { + local id="test-retrieve_simple" + + imag-store create -p ${id} || { err "create failed"; return 1; } + + out "Going to test the retrieve functionality now" + local both_out="$(retrieve --id ${id} --raw)" + out "Retrieving for both_out finished" + + if [[ "$both_out" != "$(std_header)" ]]; then + err "Expected "$(std_header)" as output, got '$both_out'" + return 1 + fi +} + +invoke_tests \ + test_retrieve_nothing \ + test_retrieve_content \ + test_retrieve_header \ + test_retrieve_raw |