summaryrefslogtreecommitdiffstats
path: root/imag-store
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2016-02-04 17:57:35 +0100
committerMatthias Beyer <mail@beyermatthias.de>2016-02-09 13:48:14 +0100
commitef8c364ef139a05a7ec6fefe4f61d181c51fd4c6 (patch)
tree96b10bf3b4a74be801827d08d311fd27bfdc98b4 /imag-store
parente8ec335b74bc5b481317bc040544464ae810e3a2 (diff)
Add test: retrieve
Diffstat (limited to 'imag-store')
-rw-r--r--imag-store/tests/002-retrieve_test.sh84
1 files changed, 84 insertions, 0 deletions
diff --git a/imag-store/tests/002-retrieve_test.sh b/imag-store/tests/002-retrieve_test.sh
new file mode 100644
index 00000000..33b96780
--- /dev/null
+++ b/imag-store/tests/002-retrieve_test.sh
@@ -0,0 +1,84 @@
+#!/usr/bin/env bash
+
+source $(dirname ${BASH_SOURCE[0]})/utils.sh
+
+std_header() {
+ cat <<EOS
+---
+[imag]
+links = []
+version = "0.1.0"
+---
+EOS
+}
+
+retrieve() {
+ silent imag-store retrieve $*
+}
+
+test_retrieve_nothing() {
+ local id="test-retrieve_nothing~0.1.0"
+
+ imag-store create -p /${id} || { err "create failed"; return 1; }
+
+ out "Going to test the retrieve functionality now"
+ local zero_out="$(retrieve --id /${id})"
+ 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~0.1.0"
+
+ 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)"
+ 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~0.1.0"
+
+ 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~0.1.0"
+
+ 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