123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- #!/usr/bin/bash
- #First, start gnunet-arm and the rest-service.
- #Exit 0 means success, exit 1 means failed test
- identity_link="http://localhost:7776/identity"
- wrong_link="http://localhost:7776/identityandmore"
- curl_get () {
- #$1 is link
- #$2 is grep
- cache="$(curl -v "$1" 2>&1 | grep "$2")"
- #echo $cache
- if [ "" == "$cache" ]
- then
- exit 1
- fi
- }
- curl_post () {
- #$1 is link
- #$2 is data
- #$3 is grep
- cache="$(curl -v -X "POST" "$1" --data "$2" 2>&1 | grep "$3")"
- #echo $cache
- if [ "" == "$cache" ]
- then
- exit 1
- fi
- }
- curl_delete () {
- #$1 is link
- #$2 is grep
- cache="$(curl -v -X "DELETE" "$1" 2>&1 | grep "$2")"
- #echo $cache
- if [ "" == "$cache" ]
- then
- exit 1
- fi
- }
- curl_put () {
- #$1 is link
- #$2 is data
- #$3 is grep
- cache="$(curl -v -X "PUT" "$1" --data "$2" 2>&1 | grep "$3")"
- #echo $cache
- if [ "" == "$cache" ]
- then
- exit 1
- fi
- }
- #Test GET
- test="$(gnunet-identity -d)"
- #if no identity exists
- if [ "" == "$test" ]
- then
- curl_get "$identity_link/all" "error"
- gnunet-identity -C "test_plugin_rest_identity"
- name="$(gnunet-identity -d | awk 'NR==1{print $1}')"
- public="$(gnunet-identity -d | awk 'NR==1{print $3}')"
-
- curl_get "${identity_link}/name/$name" "$public"
- curl_get "${identity_link}/name/$public" "error"
- curl_get "${identity_link}/name/" "error"
-
- curl_get "${identity_link}/pubkey/$public" "$name"
- curl_get "${identity_link}/pubkey/$name" "error"
- curl_get "${identity_link}/pubkey/" "error"
-
- gnunet-identity -D "test_plugin_rest_identity"
- else
- name="$(gnunet-identity -d | awk 'NR==1{print $1}')"
- public="$(gnunet-identity -d | awk 'NR==1{print $3}')"
-
- curl_get "${identity_link}/name/$name" "$public"
- curl_get "${identity_link}/name/$public" "error"
- curl_get "${identity_link}/name/" "error"
-
- curl_get "${identity_link}/pubkey/$public" "$name"
- curl_get "${identity_link}/pubkey/$name" "error"
- curl_get "${identity_link}/pubkey/" "error"
- fi
- #Test POST
- gnunet-identity -D "test_plugin_rest_identity" > /dev/null 2>&1
- gnunet-identity -D "test_plugin_rest_identity1" > /dev/null 2>&1
- curl_post "${identity_link}" '{"name":"test_plugin_rest_identity"}' "HTTP/1.1 201 Created"
- curl_post "${identity_link}" '{"name":"test_plugin_rest_identity"}' "HTTP/1.1 409"
- curl_post "${identity_link}" '{"name":"Test_plugin_rest_identity"}' "HTTP/1.1 409"
- curl_post "${identity_link}" '{}' "error"
- curl_post "${identity_link}" '' "error"
- curl_post "${identity_link}" '{"name":""}' "error"
- curl_post "${identity_link}" '{"name":123}' "error"
- curl_post "${identity_link}" '{"name":[]}' "error"
- curl_post "${identity_link}" '{"name1":"test_plugin_rest_identity"}' "error"
- curl_post "${identity_link}" '{"other":""}' "error"
- curl_post "${identity_link}" '{"name":"test_plugin_rest_identity1", "other":"test_plugin_rest_identity2"}' "error"
- #Test PUT
- name="$(gnunet-identity -d | grep "test_plugin_rest_identity" | awk 'NR==1{print $1}')"
- public="$(gnunet-identity -d | grep "test_plugin_rest_identity" | awk 'NR==1{print $3}')"
- curl_put "${identity_link}/pubkey/$public" '{"newname":"test_plugin_rest_identity1"}' "HTTP/1.1 204"
- curl_put "${identity_link}/pubkey/$public" '{"newname":"test_plugin_rest_identity1"}' "HTTP/1.1 409"
- curl_put "${identity_link}/pubkey/${public}xx" '{"newname":"test_plugin_rest_identity1"}' "HTTP/1.1 404"
- curl_put "${identity_link}/pubkey/" '{"newname":"test_plugin_rest_identity1"}' "HTTP/1.1 404"
- curl_put "${identity_link}/pubke" '{"newname":"test_plugin_rest_identity1"}' "error"
- curl_put "${identity_link}" '{"newname":"test_plugin_rest_identity1","other":"sdfdsf"}' "error"
- curl_put "${identity_link}/pubkey/$name" '{"newname":"test_plugin_rest_identity1"}' "HTTP/1.1 404"
- curl_put "${identity_link}/name/test_plugin_rest_identity1" '{"newname":"test_plugin_rest_identity"}' "HTTP/1.1 204"
- curl_put "${identity_link}/pubkey/$public" '{"newnam":"test_plugin_rest_identity"}' "error"
- curl_put "${identity_link}/name/test_plugin_rest_identity" '{"newname":"test_plugin_rest_identity1"}' "HTTP/1.1 204"
- curl_put "${identity_link}/name/test_plugin_rest_identity1" '{"newname":"TEST_plugin_rest_identity1"}' "HTTP/1.1 409"
- curl_put "${identity_link}/name/test_plugin_rest_identity1" '{"newname":"test_plugin_rest_identity1"}' "HTTP/1.1 409"
- curl_put "${identity_link}/name/test_plugin_rest_identityxxx" '{"newname":"test_plugin_rest_identity"}' "HTTP/1.1 404"
- curl_put "${identity_link}/name/test_plugin_rest_identity1" '{"newname":"test_plugin_rest_identity"}' "HTTP/1.1 204"
- curl_put "${identity_link}/name/test_plugin_rest_identity" '{"newnam":"test_plugin_rest_identityfail"}' "error"
- #Test subsystem
- curl_put "${identity_link}/subsystem/test_plugin_rest_identity" '{"subsystem":"namestore"}' "HTTP/1.1 204"
- curl_put "${identity_link}/subsystem/test_plugin_rest_identity" '{"subsystem":"namestore"}' "HTTP/1.1 204"
- curl_get "${identity_link}/subsystem/namestore" "test_plugin_rest_identity"
- public="$(gnunet-identity -d | grep "test_plugin_rest_identity" | awk 'NR==1{print $3}')"
- curl_put "${identity_link}/subsystem/$public" '{"subsystem":"namestore"}' "HTTP/1.1 404"
- curl_post "${identity_link}" '{"name":"test_plugin_rest_identity1"}' "HTTP/1.1 201 Created"
- curl_get "${identity_link}/subsystem/test_plugin_rest_identity_no_subsystem" "error"
- curl_put "${identity_link}/subsystem/test_plugin_rest_identity1" '{"subsystem":"test_plugin_rest_identity_no_subsystem"}' "HTTP/1.1 204"
- curl_get "${identity_link}/subsystem/test_plugin_rest_identity_no_subsystem" "test_plugin_rest_identity1"
- curl_put "${identity_link}/subsystem/test_plugin_rest_identity1" '{"subsyste":"test_plugin_rest_identity_no_subsystem"}' "error"
- curl_put "${identity_link}/subsystem/test_plugin_rest_identity1" '{"subsystem":"test_plugin_rest_identity_no_subsystem"}' "HTTP/1.1 204"
- #Test DELETE
- curl_delete "${identity_link}/name/test_plugin_rest_identity" "HTTP/1.1 204"
- curl_get "${identity_link}/name/test_plugin_rest_identity" "error"
- curl_delete "${identity_link}/name/TEST_plugin_rest_identity1" "HTTP/1.1 204"
- curl_delete "${identity_link}/name/test_plugin_rest_identity1" "HTTP/1.1 404"
- curl_get "${identity_link}/name/test_plugin_rest_identity1" "error"
- curl_delete "${identity_link}/name/test_plugin_rest_identity_not_found" "HTTP/1.1 404"
- curl_post "${identity_link}" '{"name":"test_plugin_rest_identity1"}' "HTTP/1.1 201 Created"
- public="$(gnunet-identity -d | grep "test_plugin_rest_identity1" | awk 'NR==1{print $3}')"
- curl_delete "${identity_link}/pubkey/$public" "HTTP/1.1 204"
- curl_delete "${identity_link}/pubke/$public" "error"
- curl_delete "${identity_link}/pubkey/${public}other=232" "HTTP/1.1 404"
- #Test wrong_link
- curl_get "$wrong_link" "HTTP/1.1 404"
- curl_post "$wrong_link" '{"name":"test_plugin_rest_identity"}' "HTTP/1.1 404"
- curl_put "$wrong_link/name/test_plugin_rest_identity" '{"newname":"test_plugin_rest_identity1"}' "HTTP/1.1 404"
- curl_delete "$wrong_link/name/test_plugin_rest_identity1" "HTTP/1.1 404"
- exit 0;
|