#!/bin/bash # Available tests marked with `TEST` - ez grep usage active_tests='list_all_channels create_channel delete_channel' list_all_channels() { # TEST result=$(curl --silent -i $GET $url/channels/list -d $simple_key) code=$(echo "$result" | grep HTTP\/1.1 | awk '{print $2}') log_result "good_list_all_channels" 200 $code "$result" } create_channel() { kv='{"secret":"secret", "name":"sample", "kind":2, "description":"some bs description"}' result=$($crl $POST $url/channels/create -d "$kv") code=$(echo "$result" | grep HTTP\/1.1 | awk '{print $2}') log_result good_create_channel 200 $code "$result" } delete_channel() { kv='{"secret":"secret", "name":"sample"}' result=$($crl $POST $url/channels/delete -d "$kv") code=$(echo "$result" | grep HTTP\/1.1 | awk '{print $2}') log_result good_delete_channel 200 $code "$result" } send_message() { # creating a bs channel, we don't care about this operation # as long as the other test passes this should be fine $crl $POST $url/channel/create -d '{"secret":"secret","name":"msgchannel"}' kv='{"secret":"secret", "content":"message sample", "channel":123}' result=$($crl $POST $url/message/send -d "$kv") code=$(echo "$result" | grep HTTP\/1.1 | awk '{print $2}') # non-existant channel for now but whatever ignore for now log_result good_send_message 200 $code "$result" } # Dispatcher to run our tests if [ -z $1 ];then for cmd in $active_tests;do $cmd done else for cmd in $@;do $cmd echo '\n'$? done fi