aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/auditor-lib/test_auditor_api.c27
-rw-r--r--src/exchange-lib/exchange_api_deposit.c6
-rw-r--r--src/exchange-lib/exchange_api_handle.c16
-rw-r--r--src/exchange-lib/exchange_api_handle.h8
-rw-r--r--src/exchange-lib/exchange_api_payback.c6
-rw-r--r--src/exchange-lib/exchange_api_refresh.c12
-rw-r--r--src/exchange-lib/exchange_api_refresh_link.c6
-rw-r--r--src/exchange-lib/exchange_api_refund.c6
-rw-r--r--src/exchange-lib/exchange_api_reserve.c10
-rw-r--r--src/exchange-lib/exchange_api_track_transaction.c6
-rw-r--r--src/exchange-lib/exchange_api_track_transfer.c6
-rw-r--r--src/exchange-lib/exchange_api_wire.c6
-rw-r--r--src/exchange-lib/testing_api_cmd_batch.c14
-rw-r--r--src/exchange-lib/testing_api_cmd_withdraw.c4
-rw-r--r--src/exchange-lib/testing_api_loop.c9
-rw-r--r--src/include/taler_testing_lib.h9
16 files changed, 98 insertions, 53 deletions
diff --git a/src/auditor-lib/test_auditor_api.c b/src/auditor-lib/test_auditor_api.c
index 6b03bb70f..bacebda4f 100644
--- a/src/auditor-lib/test_auditor_api.c
+++ b/src/auditor-lib/test_auditor_api.c
@@ -270,6 +270,27 @@ run (void *cls,
* a lot!
*/
CMD_EXEC_AGGREGATOR ("run-aggregator"),
+
+ /**
+ * Check all the transfers took place.
+ */
+ TALER_TESTING_cmd_check_bank_transfer
+ ("check_bank_transfer-499c", exchange_url,
+ "EUR:4.98", 2, 42),
+ TALER_TESTING_cmd_check_bank_transfer
+ ("check_bank_transfer-99c1", exchange_url,
+ "EUR:0.98", 2, 42),
+ TALER_TESTING_cmd_check_bank_transfer
+ ("check_bank_transfer-99c", exchange_url,
+ "EUR:0.08", 2, 43),
+ TALER_TESTING_cmd_check_bank_transfer
+ ("check_bank_transfer-aai-1", exchange_url,
+ "EUR:5.01", 42, 2),
+ TALER_TESTING_cmd_check_bank_transfer
+ ("check_bank_transfer-aai-2", exchange_url,
+ "EUR:5.01", 42, 2),
+
+ TALER_TESTING_cmd_check_bank_empty ("check_bank_empty"),
TALER_TESTING_cmd_end ()
};
@@ -505,12 +526,6 @@ main (int argc,
GNUNET_log_setup ("test-auditor-api",
"INFO",
NULL);
- if (1)
- {
- TALER_LOG_WARNING ("Test not yet ready\n");
- return 77; // FIXME: test not yet ready
- }
-
if (NULL == (fakebank_url
/* Check fakebank port is available and config cares
* about bank url. */
diff --git a/src/exchange-lib/exchange_api_deposit.c b/src/exchange-lib/exchange_api_deposit.c
index 355464099..4b92dea20 100644
--- a/src/exchange-lib/exchange_api_deposit.c
+++ b/src/exchange-lib/exchange_api_deposit.c
@@ -419,7 +419,7 @@ TALER_EXCHANGE_deposit (struct TALER_EXCHANGE_Handle *exchange,
(void) GNUNET_TIME_round_abs (&refund_deadline);
GNUNET_assert (refund_deadline.abs_value_us <= wire_deadline.abs_value_us);
GNUNET_assert (GNUNET_YES ==
- MAH_handle_is_ready (exchange));
+ TEAH_handle_is_ready (exchange));
/* initialize h_wire */
if (GNUNET_OK !=
TALER_JSON_merchant_wire_signature_hash (wire_details,
@@ -483,7 +483,7 @@ TALER_EXCHANGE_deposit (struct TALER_EXCHANGE_Handle *exchange,
dh->exchange = exchange;
dh->cb = cb;
dh->cb_cls = cb_cls;
- dh->url = MAH_path_to_url (exchange, "/deposit");
+ dh->url = TEAH_path_to_url (exchange, "/deposit");
dh->depconf.purpose.size = htonl (sizeof (struct TALER_DepositConfirmationPS));
dh->depconf.purpose.purpose = htonl (TALER_SIGNATURE_EXCHANGE_CONFIRM_DEPOSIT);
dh->depconf.h_contract_terms = *h_contract_terms;
@@ -513,7 +513,7 @@ TALER_EXCHANGE_deposit (struct TALER_EXCHANGE_Handle *exchange,
curl_easy_setopt (eh,
CURLOPT_POSTFIELDSIZE,
strlen (dh->json_enc)));
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
dh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/exchange_api_handle.c b/src/exchange-lib/exchange_api_handle.c
index b131ffcab..21c583ec7 100644
--- a/src/exchange-lib/exchange_api_handle.c
+++ b/src/exchange-lib/exchange_api_handle.c
@@ -976,7 +976,7 @@ keys_completed_cb (void *cls,
* @return ctx context to execute jobs in
*/
struct GNUNET_CURL_Context *
-MAH_handle_to_context (struct TALER_EXCHANGE_Handle *h)
+TEAH_handle_to_context (struct TALER_EXCHANGE_Handle *h)
{
return h->ctx;
}
@@ -989,7 +989,7 @@ MAH_handle_to_context (struct TALER_EXCHANGE_Handle *h)
* @return #GNUNET_YES if we are ready, #GNUNET_NO if not
*/
int
-MAH_handle_is_ready (struct TALER_EXCHANGE_Handle *h)
+TEAH_handle_is_ready (struct TALER_EXCHANGE_Handle *h)
{
return (MHS_CERT == h->state) ? GNUNET_YES : GNUNET_NO;
}
@@ -1003,10 +1003,10 @@ MAH_handle_is_ready (struct TALER_EXCHANGE_Handle *h)
* @return the full URL to use with cURL
*/
char *
-MAH_path_to_url (struct TALER_EXCHANGE_Handle *h,
+TEAH_path_to_url (struct TALER_EXCHANGE_Handle *h,
const char *path)
{
- return MAH_path_to_url2 (h->url,
+ return TEAH_path_to_url2 (h->url,
path);
}
@@ -1019,7 +1019,7 @@ MAH_path_to_url (struct TALER_EXCHANGE_Handle *h,
* @return the full URL to use with cURL
*/
char *
-MAH_path_to_url2 (const char *base_url,
+TEAH_path_to_url2 (const char *base_url,
const char *path)
{
char *url;
@@ -1443,20 +1443,20 @@ request_keys (void *cls)
kr = GNUNET_new (struct KeysRequest);
kr->exchange = exchange;
if (GNUNET_YES ==
- MAH_handle_is_ready (exchange))
+ TEAH_handle_is_ready (exchange))
{
char *arg;
GNUNET_asprintf (&arg,
"/keys?last_issue_date=%llu",
(unsigned long long) exchange->key_data.last_denom_issue_date.abs_value_us / 1000000LLU);
- kr->url = MAH_path_to_url (exchange,
+ kr->url = TEAH_path_to_url (exchange,
arg);
GNUNET_free (arg);
}
else
{
- kr->url = MAH_path_to_url (exchange,
+ kr->url = TEAH_path_to_url (exchange,
"/keys");
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
diff --git a/src/exchange-lib/exchange_api_handle.h b/src/exchange-lib/exchange_api_handle.h
index cd8b87209..8c4392731 100644
--- a/src/exchange-lib/exchange_api_handle.h
+++ b/src/exchange-lib/exchange_api_handle.h
@@ -31,7 +31,7 @@
* @return ctx context to execute jobs in
*/
struct GNUNET_CURL_Context *
-MAH_handle_to_context (struct TALER_EXCHANGE_Handle *h);
+TEAH_handle_to_context (struct TALER_EXCHANGE_Handle *h);
/**
@@ -41,7 +41,7 @@ MAH_handle_to_context (struct TALER_EXCHANGE_Handle *h);
* @return #GNUNET_YES if we are ready, #GNUNET_NO if not
*/
int
-MAH_handle_is_ready (struct TALER_EXCHANGE_Handle *h);
+TEAH_handle_is_ready (struct TALER_EXCHANGE_Handle *h);
/**
@@ -52,7 +52,7 @@ MAH_handle_is_ready (struct TALER_EXCHANGE_Handle *h);
* @return the full URL to use with cURL
*/
char *
-MAH_path_to_url (struct TALER_EXCHANGE_Handle *h,
+TEAH_path_to_url (struct TALER_EXCHANGE_Handle *h,
const char *path);
@@ -64,7 +64,7 @@ MAH_path_to_url (struct TALER_EXCHANGE_Handle *h,
* @return the full URL to use with cURL
*/
char *
-MAH_path_to_url2 (const char *base_url,
+TEAH_path_to_url2 (const char *base_url,
const char *path);
diff --git a/src/exchange-lib/exchange_api_payback.c b/src/exchange-lib/exchange_api_payback.c
index 5bfed2cfe..9f8005558 100644
--- a/src/exchange-lib/exchange_api_payback.c
+++ b/src/exchange-lib/exchange_api_payback.c
@@ -284,7 +284,7 @@ TALER_EXCHANGE_payback (struct TALER_EXCHANGE_Handle *exchange,
CURL *eh;
GNUNET_assert (GNUNET_YES ==
- MAH_handle_is_ready (exchange));
+ TEAH_handle_is_ready (exchange));
pr.purpose.purpose = htonl (TALER_SIGNATURE_WALLET_COIN_PAYBACK);
pr.purpose.size = htonl (sizeof (struct TALER_PaybackRequestPS));
GNUNET_CRYPTO_eddsa_key_get_public (&ps->coin_priv.eddsa_priv,
@@ -317,7 +317,7 @@ TALER_EXCHANGE_payback (struct TALER_EXCHANGE_Handle *exchange,
ph->pk = pk;
ph->cb = payback_cb;
ph->cb_cls = payback_cb_cls;
- ph->url = MAH_path_to_url (exchange, "/payback");
+ ph->url = TEAH_path_to_url (exchange, "/payback");
ph->json_enc = json_dumps (payback_obj,
JSON_COMPACT);
@@ -341,7 +341,7 @@ TALER_EXCHANGE_payback (struct TALER_EXCHANGE_Handle *exchange,
curl_easy_setopt (eh,
CURLOPT_POSTFIELDSIZE,
strlen (ph->json_enc)));
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
ph->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/exchange_api_refresh.c b/src/exchange-lib/exchange_api_refresh.c
index 443ba7d23..50c55835b 100644
--- a/src/exchange-lib/exchange_api_refresh.c
+++ b/src/exchange-lib/exchange_api_refresh.c
@@ -1153,7 +1153,7 @@ TALER_EXCHANGE_refresh_melt (struct TALER_EXCHANGE_Handle *exchange,
struct TALER_RefreshMeltCoinAffirmationPS melt;
GNUNET_assert (GNUNET_YES ==
- MAH_handle_is_ready (exchange));
+ TEAH_handle_is_ready (exchange));
md = deserialize_melt_data (refresh_data,
refresh_data_length);
if (NULL == md)
@@ -1200,7 +1200,7 @@ TALER_EXCHANGE_refresh_melt (struct TALER_EXCHANGE_Handle *exchange,
rmh->melt_cb = melt_cb;
rmh->melt_cb_cls = melt_cb_cls;
rmh->md = md;
- rmh->url = MAH_path_to_url (exchange,
+ rmh->url = TEAH_path_to_url (exchange,
"/refresh/melt");
eh = TEL_curl_easy_get (rmh->url);
GNUNET_assert (NULL != (rmh->json_enc =
@@ -1215,7 +1215,7 @@ TALER_EXCHANGE_refresh_melt (struct TALER_EXCHANGE_Handle *exchange,
curl_easy_setopt (eh,
CURLOPT_POSTFIELDSIZE,
strlen (rmh->json_enc)));
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
rmh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
@@ -1533,7 +1533,7 @@ TALER_EXCHANGE_refresh_reveal (struct TALER_EXCHANGE_Handle *exchange,
struct TALER_TransferPublicKeyP transfer_pub;
GNUNET_assert (GNUNET_YES ==
- MAH_handle_is_ready (exchange));
+ TEAH_handle_is_ready (exchange));
md = deserialize_melt_data (refresh_data,
refresh_data_length);
if (NULL == md)
@@ -1627,7 +1627,7 @@ TALER_EXCHANGE_refresh_reveal (struct TALER_EXCHANGE_Handle *exchange,
rrh->reveal_cb = reveal_cb;
rrh->reveal_cb_cls = reveal_cb_cls;
rrh->md = md;
- rrh->url = MAH_path_to_url (rrh->exchange,
+ rrh->url = TEAH_path_to_url (rrh->exchange,
"/refresh/reveal");
eh = TEL_curl_easy_get (rrh->url);
@@ -1643,7 +1643,7 @@ TALER_EXCHANGE_refresh_reveal (struct TALER_EXCHANGE_Handle *exchange,
curl_easy_setopt (eh,
CURLOPT_POSTFIELDSIZE,
strlen (rrh->json_enc)));
- ctx = MAH_handle_to_context (rrh->exchange);
+ ctx = TEAH_handle_to_context (rrh->exchange);
rrh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/exchange_api_refresh_link.c b/src/exchange-lib/exchange_api_refresh_link.c
index 545c96a7c..796608db5 100644
--- a/src/exchange-lib/exchange_api_refresh_link.c
+++ b/src/exchange-lib/exchange_api_refresh_link.c
@@ -387,7 +387,7 @@ TALER_EXCHANGE_refresh_link (struct TALER_EXCHANGE_Handle *exchange,
char *arg_str;
if (GNUNET_YES !=
- MAH_handle_is_ready (exchange))
+ TEAH_handle_is_ready (exchange))
{
GNUNET_break (0);
return NULL;
@@ -407,12 +407,12 @@ TALER_EXCHANGE_refresh_link (struct TALER_EXCHANGE_Handle *exchange,
rlh->link_cb = link_cb;
rlh->link_cb_cls = link_cb_cls;
rlh->coin_priv = *coin_priv;
- rlh->url = MAH_path_to_url (exchange, arg_str);
+ rlh->url = TEAH_path_to_url (exchange, arg_str);
GNUNET_free (arg_str);
eh = TEL_curl_easy_get (rlh->url);
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
rlh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/exchange_api_refund.c b/src/exchange-lib/exchange_api_refund.c
index 1f1e66942..447e9ce08 100644
--- a/src/exchange-lib/exchange_api_refund.c
+++ b/src/exchange-lib/exchange_api_refund.c
@@ -256,7 +256,7 @@ TALER_EXCHANGE_refund (struct TALER_EXCHANGE_Handle *exchange,
struct TALER_MerchantSignatureP merchant_sig;
GNUNET_assert (GNUNET_YES ==
- MAH_handle_is_ready (exchange));
+ TEAH_handle_is_ready (exchange));
rr.purpose.purpose = htonl (TALER_SIGNATURE_MERCHANT_REFUND);
rr.purpose.size = htonl (sizeof (struct TALER_RefundRequestPS));
rr.h_contract_terms = *h_contract_terms;
@@ -355,7 +355,7 @@ refund_obj = json_pack ("{s:o, s:o," /* amount/fee */
rh->exchange = exchange;
rh->cb = cb;
rh->cb_cls = cb_cls;
- rh->url = MAH_path_to_url (exchange, "/refund");
+ rh->url = TEAH_path_to_url (exchange, "/refund");
rh->depconf.purpose.size = htonl (sizeof (struct TALER_RefundConfirmationPS));
rh->depconf.purpose.purpose = htonl (TALER_SIGNATURE_EXCHANGE_CONFIRM_REFUND);
rh->depconf.h_contract_terms = *h_contract_terms;
@@ -383,7 +383,7 @@ refund_obj = json_pack ("{s:o, s:o," /* amount/fee */
curl_easy_setopt (eh,
CURLOPT_POSTFIELDSIZE,
strlen (rh->json_enc)));
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
rh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/exchange_api_reserve.c b/src/exchange-lib/exchange_api_reserve.c
index 99e7588c0..aa153f210 100644
--- a/src/exchange-lib/exchange_api_reserve.c
+++ b/src/exchange-lib/exchange_api_reserve.c
@@ -607,7 +607,7 @@ TALER_EXCHANGE_reserve_status (struct TALER_EXCHANGE_Handle *exchange,
char *arg_str;
if (GNUNET_YES !=
- MAH_handle_is_ready (exchange))
+ TEAH_handle_is_ready (exchange))
{
GNUNET_break (0);
return NULL;
@@ -623,12 +623,12 @@ TALER_EXCHANGE_reserve_status (struct TALER_EXCHANGE_Handle *exchange,
rsh->cb = cb;
rsh->cb_cls = cb_cls;
rsh->reserve_pub = *reserve_pub;
- rsh->url = MAH_path_to_url (exchange,
+ rsh->url = TEAH_path_to_url (exchange,
arg_str);
GNUNET_free (arg_str);
eh = TEL_curl_easy_get (rsh->url);
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
rsh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_NO,
@@ -1022,7 +1022,7 @@ reserve_withdraw_internal (struct TALER_EXCHANGE_Handle *exchange,
}
wsh->ps = *ps;
- wsh->url = MAH_path_to_url (exchange, "/reserve/withdraw");
+ wsh->url = TEAH_path_to_url (exchange, "/reserve/withdraw");
eh = TEL_curl_easy_get (wsh->url);
GNUNET_assert (NULL != (wsh->json_enc =
@@ -1037,7 +1037,7 @@ reserve_withdraw_internal (struct TALER_EXCHANGE_Handle *exchange,
curl_easy_setopt (eh,
CURLOPT_POSTFIELDSIZE,
strlen (wsh->json_enc)));
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
wsh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/exchange_api_track_transaction.c b/src/exchange-lib/exchange_api_track_transaction.c
index 0d9f97ee4..d61344e59 100644
--- a/src/exchange-lib/exchange_api_track_transaction.c
+++ b/src/exchange-lib/exchange_api_track_transaction.c
@@ -279,7 +279,7 @@ TALER_EXCHANGE_track_transaction (struct TALER_EXCHANGE_Handle *exchange,
CURL *eh;
if (GNUNET_YES !=
- MAH_handle_is_ready (exchange))
+ TEAH_handle_is_ready (exchange))
{
GNUNET_break (0);
return NULL;
@@ -314,7 +314,7 @@ TALER_EXCHANGE_track_transaction (struct TALER_EXCHANGE_Handle *exchange,
dwh->exchange = exchange;
dwh->cb = cb;
dwh->cb_cls = cb_cls;
- dwh->url = MAH_path_to_url (exchange, "/track/transaction");
+ dwh->url = TEAH_path_to_url (exchange, "/track/transaction");
dwh->depconf.purpose.size = htonl (sizeof (struct TALER_ConfirmWirePS));
dwh->depconf.purpose.purpose = htonl (TALER_SIGNATURE_EXCHANGE_CONFIRM_WIRE);
dwh->depconf.h_wire = *h_wire;
@@ -334,7 +334,7 @@ TALER_EXCHANGE_track_transaction (struct TALER_EXCHANGE_Handle *exchange,
curl_easy_setopt (eh,
CURLOPT_POSTFIELDSIZE,
strlen (dwh->json_enc)));
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
dwh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/exchange_api_track_transfer.c b/src/exchange-lib/exchange_api_track_transfer.c
index 7d4c92f7c..cf87fe77a 100644
--- a/src/exchange-lib/exchange_api_track_transfer.c
+++ b/src/exchange-lib/exchange_api_track_transfer.c
@@ -334,7 +334,7 @@ TALER_EXCHANGE_track_transfer (struct TALER_EXCHANGE_Handle *exchange,
CURL *eh;
if (GNUNET_YES !=
- MAH_handle_is_ready (exchange))
+ TEAH_handle_is_ready (exchange))
{
GNUNET_break (0);
return NULL;
@@ -350,13 +350,13 @@ TALER_EXCHANGE_track_transfer (struct TALER_EXCHANGE_Handle *exchange,
GNUNET_asprintf (&path,
"/track/transfer?wtid=%s",
buf);
- wdh->url = MAH_path_to_url (wdh->exchange,
+ wdh->url = TEAH_path_to_url (wdh->exchange,
path);
GNUNET_free (buf);
GNUNET_free (path);
eh = TEL_curl_easy_get (wdh->url);
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
wdh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/exchange_api_wire.c b/src/exchange-lib/exchange_api_wire.c
index 894fd4944..c57ad6d92 100644
--- a/src/exchange-lib/exchange_api_wire.c
+++ b/src/exchange-lib/exchange_api_wire.c
@@ -397,7 +397,7 @@ TALER_EXCHANGE_wire (struct TALER_EXCHANGE_Handle *exchange,
CURL *eh;
if (GNUNET_YES !=
- MAH_handle_is_ready (exchange))
+ TEAH_handle_is_ready (exchange))
{
GNUNET_break (0);
return NULL;
@@ -406,10 +406,10 @@ TALER_EXCHANGE_wire (struct TALER_EXCHANGE_Handle *exchange,
wh->exchange = exchange;
wh->cb = wire_cb;
wh->cb_cls = wire_cb_cls;
- wh->url = MAH_path_to_url (exchange, "/wire");
+ wh->url = TEAH_path_to_url (exchange, "/wire");
eh = TEL_curl_easy_get (wh->url);
- ctx = MAH_handle_to_context (exchange);
+ ctx = TEAH_handle_to_context (exchange);
wh->job = GNUNET_CURL_job_add (ctx,
eh,
GNUNET_YES,
diff --git a/src/exchange-lib/testing_api_cmd_batch.c b/src/exchange-lib/testing_api_cmd_batch.c
index 582bea7c8..5269d0b8b 100644
--- a/src/exchange-lib/testing_api_cmd_batch.c
+++ b/src/exchange-lib/testing_api_cmd_batch.c
@@ -189,3 +189,17 @@ TALER_TESTING_cmd_is_batch (const struct TALER_TESTING_Command *cmd)
{
return cmd->run == &batch_run;
}
+
+
+/**
+ * Obtain what command the batch is at.
+ *
+ * @return cmd current batch command
+ */
+struct TALER_TESTING_Command *
+TALER_TESTING_cmd_batch_get_current (const struct TALER_TESTING_Command *cmd)
+{
+ struct BatchState *bs = cmd->cls;
+
+ return &bs->batch[bs->batch_ip];
+}
diff --git a/src/exchange-lib/testing_api_cmd_withdraw.c b/src/exchange-lib/testing_api_cmd_withdraw.c
index 344a5c468..61730c526 100644
--- a/src/exchange-lib/testing_api_cmd_withdraw.c
+++ b/src/exchange-lib/testing_api_cmd_withdraw.c
@@ -434,7 +434,7 @@ TALER_TESTING_cmd_withdraw_amount
}
ws->expected_response_code = expected_response_code;
ws->exchange = exchange;
- ws->exchange_url = MAH_path_to_url (exchange, "/");
+ ws->exchange_url = TEAH_path_to_url (exchange, "/");
cmd.cls = ws;
cmd.label = label;
@@ -481,7 +481,7 @@ TALER_TESTING_cmd_withdraw_denomination
ws->pk = dk;
ws->expected_response_code = expected_response_code;
ws->exchange = exchange;
- ws->exchange_url = MAH_path_to_url (exchange, "/");
+ ws->exchange_url = TEAH_path_to_url (exchange, "/");
cmd.cls = ws;
cmd.label = label;
diff --git a/src/exchange-lib/testing_api_loop.c b/src/exchange-lib/testing_api_loop.c
index f20d93f89..f81bb75c4 100644
--- a/src/exchange-lib/testing_api_loop.c
+++ b/src/exchange-lib/testing_api_loop.c
@@ -216,6 +216,13 @@ TALER_TESTING_interpreter_fail
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"Failed at command `%s'\n",
cmd->label);
+ while (TALER_TESTING_cmd_is_batch (cmd))
+ {
+ cmd = TALER_TESTING_cmd_batch_get_current (cmd);
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ "Batch is at command `%s'\n",
+ cmd->label);
+ }
is->result = GNUNET_SYSERR;
GNUNET_SCHEDULER_shutdown ();
}
@@ -368,7 +375,7 @@ maint_child_death (void *cls)
if (TALER_TESTING_cmd_is_batch (cmd))
{
struct TALER_TESTING_Command *batch_cmd;
-
+
GNUNET_assert
(GNUNET_OK == TALER_TESTING_get_trait_cmd
(cmd, 0, &batch_cmd)); /* bad? */
diff --git a/src/include/taler_testing_lib.h b/src/include/taler_testing_lib.h
index bf3191432..9c0b00b58 100644
--- a/src/include/taler_testing_lib.h
+++ b/src/include/taler_testing_lib.h
@@ -1452,6 +1452,15 @@ int
TALER_TESTING_cmd_is_batch (const struct TALER_TESTING_Command *cmd);
+/**
+ * Obtain what command the batch is at.
+ *
+ * @return cmd current batch command
+ */
+struct TALER_TESTING_Command *
+TALER_TESTING_cmd_batch_get_current (const struct TALER_TESTING_Command *cmd);
+
+
/* *** Generic trait logic for implementing traits ********* */
/**