diff options
Diffstat (limited to 'src/testing/test_merchant_kyc.sh')
-rwxr-xr-x | src/testing/test_merchant_kyc.sh | 80 |
1 files changed, 53 insertions, 27 deletions
diff --git a/src/testing/test_merchant_kyc.sh b/src/testing/test_merchant_kyc.sh index e95e7586..1c818c31 100755 --- a/src/testing/test_merchant_kyc.sh +++ b/src/testing/test_merchant_kyc.sh @@ -1,6 +1,6 @@ #!/bin/bash # This file is part of TALER -# Copyright (C) 2014-2021 Taler Systems SA +# Copyright (C) 2014-2023 Taler Systems SA # # TALER is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as @@ -16,22 +16,50 @@ # License along with TALER; see the file COPYING. If not, see # <http://www.gnu.org/licenses/> # +set -eu -. initialize_taler_system.sh +. setup.sh -echo -n "Configuring a merchant instance before configuring the default instance ..." +# Launch system. +setup -c "test_template.conf" -mef -u "exchange-account-2" +LAST_RESPONSE=$(mktemp -p "${TMPDIR:-/tmp}" test_response.conf-XXXXXX) + +echo -n "Configuring a merchant default instance ..." STATUS=$(curl -H "Content-Type: application/json" -X POST \ -H 'Authorization: Bearer secret-token:super_secret' \ http://localhost:9966/management/instances \ - -d '{"auth":{"method":"external"},"payto_uris":["payto://x-taler-bank/localhost:8082/43","payto://x-taler-bank/localhost:8082/44"],"id":"default","name":"default","address":{},"jurisdiction":{},"default_max_wire_fee":"TESTKUDOS:1", "default_max_deposit_fee":"TESTKUDOS:1","default_wire_fee_amortization":1,"default_wire_transfer_delay":{"d_us" : 50000000},"default_pay_delay":{"d_us": 60000000}}' \ + -d '{"auth":{"method":"external"},"id":"default","name":"default","user_type":"business","address":{},"jurisdiction":{},"use_stefan":true,"default_wire_transfer_delay":{"d_us" : 50000000},"default_pay_delay":{"d_us": 60000000}}' \ -w "%{http_code}" -s -o /dev/null) if [ "$STATUS" != "204" ] then - echo 'should respond ok, instance created. got:' $STATUS - exit 1 + exit_fail "Expected 204 ok, instance created. got: $STATUS" +fi + +STATUS=$(curl -H "Content-Type: application/json" -X POST \ + -H 'Authorization: Bearer secret-token:super_secret' \ + http://localhost:9966/private/accounts \ + -d '{"payto_uri":"payto://x-taler-bank/localhost:8082/43?receiver-name=user43"}' \ + -w "%{http_code}" -s -o /dev/null) + + +if [ "$STATUS" != "200" ] +then + exit_fail "Expected 200 OK. Got: $STATUS" +fi + +STATUS=$(curl -H "Content-Type: application/json" -X POST \ + -H 'Authorization: Bearer secret-token:super_secret' \ + http://localhost:9966/private/accounts \ + -d '{"payto_uri":"payto://x-taler-bank/localhost:8082/44?receiver-name=user44"}' \ + -w "%{http_code}" -s -o /dev/null) + + +if [ "$STATUS" != "200" ] +then + exit_fail "Expected 200 OK. Got: $STATUS" fi echo " OK" @@ -39,13 +67,12 @@ echo " OK" echo -n "Check the instance exists ..." STATUS=$(curl -H "Content-Type: application/json" -X GET \ - http://localhost:9966/instances/default/private/ \ + http://localhost:9966/private/ \ -w "%{http_code}" -s -o /dev/null) if [ "$STATUS" != "200" ] then - echo 'should respond ok, instance exists. got:' $STATUS - exit 1 + exit_fail "Expected 200 ok, instance exists. got: $STATUS" fi echo " OK" @@ -57,52 +84,51 @@ RANDOM_IMG='data:image/png;base64,abcdefg' # echo -n "Creating order without TOKEN..." -STATUS=$(curl 'http://localhost:9966/instances/default/private/orders' \ - -d '{"create_token":false,"order":{"amount":"TESTKUDOS:7","summary":"3","products":[{"description":"desct","image":"'$RANDOM_IMG'","price":"TESTKUDOS:1","taxes":[],"unit":"u","quantity":1}]}}' \ - -w "%{http_code}" -s -o $LAST_RESPONSE) +STATUS=$(curl 'http://localhost:9966/private/orders' \ + -d '{"create_token":false,"order":{"amount":"TESTKUDOS:7","summary":"3","products":[{"description":"desct","image":"'"$RANDOM_IMG"'","price":"TESTKUDOS:1","taxes":[],"unit":"u","quantity":1}]}}' \ + -w "%{http_code}" -s -o "$LAST_RESPONSE") if [ "$STATUS" != "200" ] then - echo 'should response ok, order created. got:' $STATUS `cat $LAST_RESPONSE` + echo "Should respond 200 OK, order created. got: $STATUS" + jq < "$LAST_RESPONSE" exit 1 fi -ORDER_ID=`jq -r .order_id < $LAST_RESPONSE` -TOKEN=`jq -r .token < $LAST_RESPONSE` +ORDER_ID=$(jq -r .order_id < "$LAST_RESPONSE") +TOKEN=$(jq -r .token < "$LAST_RESPONSE") if [ "$TOKEN" != "null" ] then - echo 'token should be null, got:' $TOKEN - exit 1 + exit_fail "Token should be null, got: $TOKEN" fi -echo OK +echo "OK" echo -n "Checking created order without TOKEN..." STATUS=$(curl http://localhost:9966/orders/$ORDER_ID \ - -w "%{http_code}" -s -o $LAST_RESPONSE) + -w "%{http_code}" -s -o "$LAST_RESPONSE") -PAY_URI=`jq -r .taler_pay_uri < $LAST_RESPONSE` +PAY_URI=$(jq -r .taler_pay_uri < "$LAST_RESPONSE") if [ "$PAY_URI" == "null" ] then - echo 'should have a payuri. got:' $PAY_URI `cat $LAST_RESPONSE` - exit 1 + cat "$LAST_RESPONSE" + exit_fail "Expected a taler_pay_uri. Got: $PAY_URI" fi -echo OK +echo "OK" -echo -n "Getting information about kyc ..." +echo -n "Getting information about KYC ..." STATUS=$(curl -H "Content-Type: application/json" -X GET \ - http://localhost:9966/instances/default/private/kyc \ + http://localhost:9966/private/kyc \ -w "%{http_code}" -s -o /dev/null) if [ "$STATUS" != "204" ] then - echo 'should respond ok, instance created. got:' $STATUS - exit 1 + exit_fail "Expected 204. got: $STATUS" fi echo " OK" |