From 659cd4439d03f7a2a5617f91dc90554b3c5ee2b6 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 7 Nov 2021 14:12:54 +0100 Subject: expose KYC traits for withdraw/get deposits commands --- src/include/taler_testing_lib.h | 1 + src/testing/testing_api_cmd_deposits_get.c | 8 ++++++++ src/testing/testing_api_cmd_withdraw.c | 11 +++++++++-- 3 files changed, 18 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/include/taler_testing_lib.h b/src/include/taler_testing_lib.h index c5530f0f5..65f4e40a7 100644 --- a/src/include/taler_testing_lib.h +++ b/src/include/taler_testing_lib.h @@ -2368,6 +2368,7 @@ TALER_TESTING_get_trait (const struct TALER_TESTING_Trait *traits, op (taler_uri, const char *) \ op (payto_uri, const char *) \ op (row, const uint64_t) \ + op (payment_target_uuid, const uint64_t) \ op (array_length, const unsigned int) \ op (credit_payto_uri, const char *) \ op (debit_payto_uri, const char *) \ diff --git a/src/testing/testing_api_cmd_deposits_get.c b/src/testing/testing_api_cmd_deposits_get.c index 389d46604..df505044d 100644 --- a/src/testing/testing_api_cmd_deposits_get.c +++ b/src/testing/testing_api_cmd_deposits_get.c @@ -49,6 +49,12 @@ struct TrackTransactionState */ unsigned int expected_response_code; + /** + * Set to the KYC UUID *if* the exchange replied with + * a request for KYC (#MHD_HTTP_ACCEPTED). + */ + uint64_t kyc_uuid; + /** * Reference to any operation that can provide a transaction. * Will be the transaction to track. @@ -147,6 +153,7 @@ deposit_wtid_cb (void *cls, break; case MHD_HTTP_ACCEPTED: /* allowed, nothing to check here */ + tts->kyc_uuid = dr->details.accepted.payment_target_uuid; break; case MHD_HTTP_NOT_FOUND: /* allowed, nothing to check here */ @@ -306,6 +313,7 @@ track_transaction_traits (void *cls, struct TrackTransactionState *tts = cls; struct TALER_TESTING_Trait traits[] = { TALER_TESTING_make_trait_wtid (&tts->wtid), + TALER_TESTING_make_trait_payment_target_uuid (&tts->kyc_uuid), TALER_TESTING_trait_end () }; diff --git a/src/testing/testing_api_cmd_withdraw.c b/src/testing/testing_api_cmd_withdraw.c index aa77cb1e1..a9c599a40 100644 --- a/src/testing/testing_api_cmd_withdraw.c +++ b/src/testing/testing_api_cmd_withdraw.c @@ -126,6 +126,12 @@ struct WithdrawState */ struct GNUNET_TIME_Relative total_backoff; + /** + * Set to the KYC UUID *if* the exchange replied with + * a request for KYC. + */ + uint64_t kyc_uuid; + /** * Expected HTTP response code to the request. */ @@ -253,7 +259,7 @@ reserve_withdraw_cb (void *cls, break; case MHD_HTTP_ACCEPTED: /* nothing to check */ - /* TODO: trait for returned uuid! */ + ws->kyc_uuid = wr->details.accepted.payment_target_uuid; break; case MHD_HTTP_FORBIDDEN: /* nothing to check */ @@ -287,7 +293,7 @@ reserve_withdraw_cb (void *cls, * @param[out] idx where we set $INDEX * @return #GNUNET_SYSERR if $INDEX is present but not numeric */ -static int +static enum GNUNET_GenericReturnValue parse_coin_reference (const char *coin_reference, char **cref, unsigned int *idx) @@ -528,6 +534,7 @@ withdraw_traits (void *cls, TALER_TESTING_make_trait_reserve_priv (reserve_priv), TALER_TESTING_make_trait_reserve_pub (reserve_pub), TALER_TESTING_make_trait_amount (&ws->amount), + TALER_TESTING_make_trait_payment_target_uuid (&ws->kyc_uuid), TALER_TESTING_make_trait_exchange_url ( (const char **) &ws->exchange_url), TALER_TESTING_trait_end () -- cgit v1.2.3