X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=test%2Fcommon%2Fecs_api_functions.sh;h=b76d43b75dafcf4bdacde4ad13ca0e1494c92e50;hb=49f0e5ab01b51aee8713a17aed86cd6d229b40cc;hp=6c726b9c669483b18c2b458b6736cc9908189bbf;hpb=b5cb68ea0e77d0a1421b4f17cc58b981628c29f7;p=nonrtric.git diff --git a/test/common/ecs_api_functions.sh b/test/common/ecs_api_functions.sh index 6c726b9c..b76d43b7 100644 --- a/test/common/ecs_api_functions.sh +++ b/test/common/ecs_api_functions.sh @@ -34,23 +34,44 @@ # API Test function: GET /A1-EI​/v1​/eitypes​/{eiTypeId}​/eijobs # args: |NOOWNER [ EMPTY | + ] +# args (flat uri structure): |NOTYPE |NOOWNER [ EMPTY | + ] # (Function for test scripts) ecs_api_a1_get_job_ids() { echo -e $BOLD"TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ $EBOLD echo "TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ >> $HTTPLOG ((RES_TEST++)) - # Valid number of parameters 3,4,5,6 etc - if [ $# -lt 1 ]; then - __print_err " |NOOWNER [ EMPTY | + ]" $@ - return 1 + if [ -z "$FLAT_A1_EI" ]; then + # Valid number of parameters 4,5,6 etc + if [ $# -lt 3 ]; then + __print_err " |NOOWNER [ EMPTY | + ]" $@ + return 1 + fi + else + echo -e $YELLOW"USING NOT CONFIRMED INTERFACE - FLAT URI STRUCTURE"$EYELLOW + # Valid number of parameters 4,5,6 etc + if [ $# -lt 3 ]; then + __print_err " |NOTYPE |NOOWNER [ EMPTY | + ]" $@ + return 1 + fi fi - owner="" + search="" if [ $3 != "NOWNER" ]; then - owner="?owner="$3 + search="?owner="$3 fi - query="/A1-EI/v1/eitypes/$2/eijobs$owner" + if [ -z "$FLAT_A1_EI" ]; then + query="/A1-EI/v1/eitypes/$2/eijobs$search" + else + if [ $2 != "NOTYPE" ]; then + if [ -z "$search" ]; then + search="?eiTypeId="$2 + else + search=$search"&eiTypeId="$2 + fi + fi + query="/A1-EI/v1/eijobs$search" + fi res="$(__do_curl_to_api ECS GET $query)" status=${res:${#res}-3} @@ -125,7 +146,11 @@ ecs_api_a1_get_type() { __check_stop_at_error return 1 fi - targetJson="{\"eiJobParametersSchema\":$schema}" + if [ -z "$FLAT_A1_EI" ]; then + targetJson="{\"eiJobParametersSchema\":$schema}" + else + targetJson=$schema + fi echo " TARGET JSON: $targetJson" >> $HTTPLOG res=$(python3 ../common/compare_json.py "$targetJson" "$body") @@ -137,22 +162,21 @@ ecs_api_a1_get_type() { fi fi - ((RES_PASS++)) echo -e $GREEN" PASS"$EGREEN return 0 } -# API Test function: GET ​/A1-EI​/v1​/eitypes -# args: (EMPTY | []+) +# API Test function: GET /A1-EI/v1/eitypes +# args: [ (EMPTY | []+) ] # (Function for test scripts) ecs_api_a1_get_type_ids() { echo -e $BOLD"TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ $EBOLD echo "TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ >> $HTTPLOG ((RES_TEST++)) - if [ $# -lt 2 ]; then - __print_err " (EMPTY | []+)" $@ + if [ $# -lt 1 ]; then + __print_err " [ (EMPTY | []+) ]" $@ return 1 fi @@ -166,25 +190,27 @@ ecs_api_a1_get_type_ids() { __check_stop_at_error return 1 fi - body=${res:0:${#res}-3} - targetJson="[" - if [ $2 != "EMPTY" ]; then - for pid in ${@:2} ; do - if [ "$targetJson" != "[" ]; then - targetJson=$targetJson"," - fi - targetJson=$targetJson"\"$pid\"" - done - fi - targetJson=$targetJson"]" - echo " TARGET JSON: $targetJson" >> $HTTPLOG - res=$(python3 ../common/compare_json.py "$targetJson" "$body") + if [ $# -gt 1 ]; then + body=${res:0:${#res}-3} + targetJson="[" + if [ $2 != "EMPTY" ]; then + for pid in ${@:2} ; do + if [ "$targetJson" != "[" ]; then + targetJson=$targetJson"," + fi + targetJson=$targetJson"\"$pid\"" + done + fi + targetJson=$targetJson"]" + echo " TARGET JSON: $targetJson" >> $HTTPLOG + res=$(python3 ../common/compare_json.py "$targetJson" "$body") - if [ $res -ne 0 ]; then - echo -e $RED" FAIL, returned body not correct"$ERED - ((RES_FAIL++)) - __check_stop_at_error - return 1 + if [ $res -ne 0 ]; then + echo -e $RED" FAIL, returned body not correct"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi fi ((RES_PASS++)) @@ -194,39 +220,74 @@ ecs_api_a1_get_type_ids() { # API Test function: GET ​/A1-EI​/v1​/eitypes​/{eiTypeId}​/eijobs​/{eiJobId}​/status # args: [] +# args (flat uri structure): [] # (Function for test scripts) ecs_api_a1_get_job_status() { echo -e $BOLD"TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ $EBOLD echo "TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ >> $HTTPLOG ((RES_TEST++)) - if [ $# -ne 3 ] && [ $# -ne 4 ]; then - __print_err " " $@ - return 1 - fi + if [ -z "$FLAT_A1_EI" ]; then + if [ $# -ne 3 ] && [ $# -ne 4 ]; then + __print_err " []" $@ + return 1 + fi - query="/A1-EI/v1/eitypes/$2/eijobs/$3/status" - res="$(__do_curl_to_api ECS GET $query)" - status=${res:${#res}-3} + query="/A1-EI/v1/eitypes/$2/eijobs/$3/status" - if [ $status -ne $1 ]; then - echo -e $RED" FAIL. Exepected status "$1", got "$status $ERED - ((RES_FAIL++)) - __check_stop_at_error - return 1 - fi - if [ $# -eq 4 ]; then - body=${res:0:${#res}-3} - targetJson="{\"operationalState\": \"$4\"}" - echo " TARGET JSON: $targetJson" >> $HTTPLOG - res=$(python3 ../common/compare_json.py "$targetJson" "$body") + res="$(__do_curl_to_api ECS GET $query)" + status=${res:${#res}-3} - if [ $res -ne 0 ]; then - echo -e $RED" FAIL, returned body not correct"$ERED + if [ $status -ne $1 ]; then + echo -e $RED" FAIL. Exepected status "$1", got "$status $ERED ((RES_FAIL++)) __check_stop_at_error return 1 fi + if [ $# -eq 4 ]; then + body=${res:0:${#res}-3} + targetJson="{\"operationalState\": \"$4\"}" + echo " TARGET JSON: $targetJson" >> $HTTPLOG + res=$(python3 ../common/compare_json.py "$targetJson" "$body") + + if [ $res -ne 0 ]; then + echo -e $RED" FAIL, returned body not correct"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi + fi + else + echo -e $YELLOW"USING NOT CONFIRMED INTERFACE - FLAT URI STRUCTURE"$EYELLOW + if [ $# -ne 2 ] && [ $# -ne 3 ]; then + __print_err " []" $@ + return 1 + fi + + query="/A1-EI/v1/eijobs/$2/status" + + res="$(__do_curl_to_api ECS GET $query)" + status=${res:${#res}-3} + + if [ $status -ne $1 ]; then + echo -e $RED" FAIL. Exepected status "$1", got "$status $ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi + if [ $# -eq 3 ]; then + body=${res:0:${#res}-3} + targetJson="{\"eiJobStatus\": \"$3\"}" + echo " TARGET JSON: $targetJson" >> $HTTPLOG + res=$(python3 ../common/compare_json.py "$targetJson" "$body") + + if [ $res -ne 0 ]; then + echo -e $RED" FAIL, returned body not correct"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi + fi fi ((RES_PASS++)) @@ -236,18 +297,27 @@ ecs_api_a1_get_job_status() { # API Test function: GET ​/A1-EI​/v1​/eitypes​/{eiTypeId}​/eijobs​/{eiJobId} # args: [ ] +# args (flat uri structure): [ ] # (Function for test scripts) ecs_api_a1_get_job() { echo -e $BOLD"TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ $EBOLD echo "TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ >> $HTTPLOG ((RES_TEST++)) - if [ $# -ne 3 ] && [ $# -ne 6 ]; then - __print_err " [ ]" $@ - return 1 + if [ -z "$FLAT_A1_EI" ]; then + if [ $# -ne 3 ] && [ $# -ne 6 ]; then + __print_err " [ ]" $@ + return 1 + fi + query="/A1-EI/v1/eitypes/$2/eijobs/$3" + else + echo -e $YELLOW"USING NOT CONFIRMED INTERFACE - FLAT URI STRUCTURE"$EYELLOW + if [ $# -ne 2 ] && [ $# -ne 7 ]; then + __print_err " [ ]" $@ + return 1 + fi + query="/A1-EI/v1/eijobs/$2" fi - - query="/A1-EI/v1/eitypes/$2/eijobs/$3" res="$(__do_curl_to_api ECS GET $query)" status=${res:${#res}-3} @@ -258,27 +328,53 @@ ecs_api_a1_get_job() { return 1 fi - if [ $# -eq 6 ]; then - body=${res:0:${#res}-3} + if [ -z "$FLAT_A1_EI" ]; then + if [ $# -eq 6 ]; then + body=${res:0:${#res}-3} - if [ -f $6 ]; then - jobfile=$(cat $6) - jobfile=$(echo "$jobfile" | sed "s/XXXX/$3/g") - else - echo -e $RED" FAIL. Job template file "$6", does not exist"$ERED - ((RES_FAIL++)) - __check_stop_at_error - return 1 + if [ -f $6 ]; then + jobfile=$(cat $6) + jobfile=$(echo "$jobfile" | sed "s/XXXX/$3/g") + else + echo -e $RED" FAIL. Job template file "$6", does not exist"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi + targetJson="{\"targetUri\": \"$4\",\"jobOwner\": \"$5\",\"jobParameters\": $jobfile}" + echo " TARGET JSON: $targetJson" >> $HTTPLOG + res=$(python3 ../common/compare_json.py "$targetJson" "$body") + + if [ $res -ne 0 ]; then + echo -e $RED" FAIL, returned body not correct"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi fi - targetJson="{\"targetUri\": \"$4\",\"jobOwner\": \"$5\",\"jobParameters\": $jobfile}" - echo " TARGET JSON: $targetJson" >> $HTTPLOG - res=$(python3 ../common/compare_json.py "$targetJson" "$body") + else + if [ $# -eq 7 ]; then + body=${res:0:${#res}-3} - if [ $res -ne 0 ]; then - echo -e $RED" FAIL, returned body not correct"$ERED - ((RES_FAIL++)) - __check_stop_at_error - return 1 + if [ -f $7 ]; then + jobfile=$(cat $7) + jobfile=$(echo "$jobfile" | sed "s/XXXX/$2/g") + else + echo -e $RED" FAIL. Job template file "$6", does not exist"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi + targetJson="{\"eiTypeId\": \"$3\", \"targetUri\": \"$4\",\"jobOwner\": \"$5\",\"jobStatusNotificationUri\": \"$6\",\"jobDefinition\": $jobfile}" + echo " TARGET JSON: $targetJson" >> $HTTPLOG + res=$(python3 ../common/compare_json.py "$targetJson" "$body") + + if [ $res -ne 0 ]; then + echo -e $RED" FAIL, returned body not correct"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi fi fi @@ -289,18 +385,28 @@ ecs_api_a1_get_job() { # API Test function: DELETE ​/A1-EI​/v1​/eitypes​/{eiTypeId}​/eijobs​/{eiJobId} # args: +# args (flat uri structure): # (Function for test scripts) ecs_api_a1_delete_job() { echo -e $BOLD"TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ $EBOLD echo "TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ >> $HTTPLOG ((RES_TEST++)) - if [ $# -lt 3 ]; then - __print_err " " $@ - return 1 - fi + if [ -z "$FLAT_A1_EI" ]; then + if [ $# -ne 3 ]; then + __print_err " " $@ + return 1 + fi - query="/A1-EI/v1/eitypes/$2/eijobs/$3" + query="/A1-EI/v1/eitypes/$2/eijobs/$3" + else + echo -e $YELLOW"USING NOT CONFIRMED INTERFACE - FLAT URI STRUCTURE"$EYELLOW + if [ $# -ne 2 ]; then + __print_err " " $@ + return 1 + fi + query="/A1-EI/v1/eijobs/$2" + fi res="$(__do_curl_to_api ECS DELETE $query)" status=${res:${#res}-3} @@ -318,31 +424,56 @@ ecs_api_a1_delete_job() { # API Test function: PUT ​/A1-EI​/v1​/eitypes​/{eiTypeId}​/eijobs​/{eiJobId} # args: +# args (flat uri structure): # (Function for test scripts) ecs_api_a1_put_job() { echo -e $BOLD"TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ $EBOLD echo "TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ >> $HTTPLOG ((RES_TEST++)) - if [ $# -lt 6 ]; then - __print_err " " $@ - return 1 - fi - if [ -f $6 ]; then - jobfile=$(cat $6) - jobfile=$(echo "$jobfile" | sed "s/XXXX/$3/g") + if [ -z "$FLAT_A1_EI" ]; then + if [ $# -lt 6 ]; then + __print_err " " $@ + return 1 + fi + if [ -f $6 ]; then + jobfile=$(cat $6) + jobfile=$(echo "$jobfile" | sed "s/XXXX/$3/g") + else + echo -e $RED" FAIL. Job template file "$6", does not exist"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi + + inputJson="{\"targetUri\": \"$4\",\"jobOwner\": \"$5\",\"jobParameters\": $jobfile}" + file="./tmp/.p.json" + echo "$inputJson" > $file + + query="/A1-EI/v1/eitypes/$2/eijobs/$3" else - echo -e $RED" FAIL. Job template file "$6", does not exist"$ERED - ((RES_FAIL++)) - __check_stop_at_error - return 1 - fi + echo -e $YELLOW"USING NOT CONFIRMED INTERFACE - FLAT URI STRUCTURE"$EYELLOW + if [ $# -lt 7 ]; then + __print_err " " $@ + return 1 + fi + if [ -f $7 ]; then + jobfile=$(cat $7) + jobfile=$(echo "$jobfile" | sed "s/XXXX/$2/g") + else + echo -e $RED" FAIL. Job template file "$7", does not exist"$ERED + ((RES_FAIL++)) + __check_stop_at_error + return 1 + fi - inputJson="{\"targetUri\": \"$4\",\"jobOwner\": \"$5\",\"jobParameters\": $jobfile}" - file="./tmp/.p.json" - echo "$inputJson" > $file + inputJson="{\"eiTypeId\": \"$3\", \"jobResultUri\": \"$4\",\"jobOwner\": \"$5\",\"jobStatusNotificationUri\": \"$6\",\"jobDefinition\": $jobfile}" + file="./tmp/.p.json" + echo "$inputJson" > $file + + query="/A1-EI/v1/eijobs/$2" + fi - query="/A1-EI/v1/eitypes/$2/eijobs/$3" res="$(__do_curl_to_api ECS PUT $query $file)" status=${res:${#res}-3} @@ -425,7 +556,7 @@ ecs_api_edp_get_producer_status() { ((RES_TEST++)) if [ $# -lt 2 ] || [ $# -gt 3 ]; then - __print_err " " $@ + __print_err " []" $@ return 1 fi @@ -514,7 +645,7 @@ ecs_api_edp_get_producer_ids() { } # API Test function: GET /ei-producer/v1/eitypes/{eiTypeId} -# args: [ (NOID | []+)] +# args: [ (EMPTY | []+)] # (Function for test scripts) ecs_api_edp_get_type() { echo -e $BOLD"TEST(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ $EBOLD @@ -529,7 +660,7 @@ ecs_api_edp_get_type() { paramError=0 fi if [ $paramError -ne 0 ]; then - __print_err " [ NOID | ([]+)]" $@ + __print_err " [ 'EMPTY' | ([]+)]" $@ return 1 fi