002-retrieve_test.sh 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. #!/usr/bin/env bash
  2. source $(dirname ${BASH_SOURCE[0]})/../../tests/utils.sh
  3. source $(dirname ${BASH_SOURCE[0]})/utils.sh
  4. std_header() {
  5. cat <<EOS
  6. ---
  7. [imag]
  8. links = []
  9. version = "0.3.0"
  10. ---
  11. EOS
  12. }
  13. retrieve() {
  14. silent imag-store retrieve $*
  15. }
  16. test_retrieve_nothing() {
  17. local id="test-retrieve_nothing"
  18. imag-store create -p ${id} || { err "create failed"; return 1; }
  19. out "Going to test the retrieve functionality now"
  20. local zero_out="$(retrieve --id ${id})" || return 1
  21. out "Retrieving for zero_out finished"
  22. if [[ ! -z "$zero_out" ]]; then
  23. err "Expected zero output, got '$zero_out'"
  24. return 1
  25. fi
  26. }
  27. test_retrieve_content() {
  28. local id="test-retrieve_simple"
  29. imag-store create -p ${id} || { err "create failed"; return 1; }
  30. out "Going to test the retrieve functionality now"
  31. local content_out="$(retrieve --id ${id} --content)" || return 1
  32. out "Retrieving for content_out finished"
  33. if [[ ! -z "$content_out" ]]; then
  34. err "Expected content output == zero output, got '$content_out'"
  35. return 1
  36. fi
  37. }
  38. test_retrieve_header() {
  39. local id="test-retrieve_simple"
  40. imag-store create -p ${id} || { err "create failed"; return 1; }
  41. out "Going to test the retrieve functionality now"
  42. local header_out="$(retrieve --id ${id} --header)"
  43. out "Retrieving for header_out finished"
  44. if [[ ! "$header_out" != "$(std_header)" ]]; then
  45. err "Expected header as output, got '$header_out'"
  46. return 1
  47. fi
  48. }
  49. test_retrieve_raw() {
  50. local id="test-retrieve_simple"
  51. imag-store create -p ${id} || { err "create failed"; return 1; }
  52. out "Going to test the retrieve functionality now"
  53. local both_out="$(retrieve --id ${id} --raw)"
  54. out "Retrieving for both_out finished"
  55. if [[ "$both_out" != "$(std_header)" ]]; then
  56. err "Expected "$(std_header)" as output, got '$both_out'"
  57. return 1
  58. fi
  59. }
  60. invoke_tests \
  61. test_retrieve_nothing \
  62. test_retrieve_content \
  63. test_retrieve_header \
  64. test_retrieve_raw