diff options
-rw-r--r-- | src/exchange-lib/test_exchange_api.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/exchange-lib/test_exchange_api.c b/src/exchange-lib/test_exchange_api.c index 3e69c25bb..056d293f5 100644 --- a/src/exchange-lib/test_exchange_api.c +++ b/src/exchange-lib/test_exchange_api.c @@ -1352,6 +1352,28 @@ find_pk (const struct TALER_EXCHANGE_Keys *keys, /** + * Function called with information about the wire fees + * for each wire method. + * + * @param cls closure + * @param wire_method name of the wire method (i.e. "sepa") + * @param fees fee structure for this method + */ +static void +check_fee_cb (void *cls, + const char *wire_method, + const struct TALER_EXCHANGE_WireAggregateFees *fees) +{ + struct InterpreterState *is = cls; + struct Command *cmd = &is->commands[is->ip]; + + GNUNET_break (0 == strcasecmp (cmd->details.wire.format, + wire_method)); + /* FIXME: actually check @a fees as well... */ +} + + +/** * Callbacks called with the result(s) of a * wire format inquiry request to the exchange. * @@ -1400,6 +1422,19 @@ wire_cb (void *cls, fail (is); return; } + if (GNUNET_OK != + TALER_EXCHANGE_wire_get_fees (&TALER_EXCHANGE_get_keys (exchange)->master_pub, + obj, + &check_fee_cb, + is)) + { + GNUNET_log (GNUNET_ERROR_TYPE_ERROR, + "Wire fee extraction in command %s failed\n", + cmd->label); + json_dumpf (obj, stderr, 0); + fail (is); + return; + } } break; default: |