From 663f26a1a269d91e5d6ab2d9d5d01102d6ffd353 Mon Sep 17 00:00:00 2001 From: Marcello Stanisci Date: Tue, 27 Feb 2018 22:49:18 +0100 Subject: fix reject test command. --- src/exchange-lib/testing_api_cmd_bank_check.c | 28 +++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) (limited to 'src/exchange-lib/testing_api_cmd_bank_check.c') diff --git a/src/exchange-lib/testing_api_cmd_bank_check.c b/src/exchange-lib/testing_api_cmd_bank_check.c index 9af156f9..380f5d61 100644 --- a/src/exchange-lib/testing_api_cmd_bank_check.c +++ b/src/exchange-lib/testing_api_cmd_bank_check.c @@ -200,17 +200,19 @@ check_bank_transfer_traits (void *cls, unsigned int index) { struct BankCheckState *bcs = cls; + struct TALER_WireTransferIdentifierRawP *wtid_ptr; - GNUNET_assert (GNUNET_OK == - GNUNET_STRINGS_string_to_data + if (GNUNET_OK != GNUNET_STRINGS_string_to_data (bcs->subject, strlen (bcs->subject), &bcs->wtid, - sizeof (struct TALER_WireTransferIdentifierRawP))); + sizeof (struct TALER_WireTransferIdentifierRawP))) + wtid_ptr = NULL; + wtid_ptr = &bcs->wtid; struct TALER_TESTING_Trait traits[] = { TALER_TESTING_make_trait_transfer_subject (0, bcs->subject), - TALER_TESTING_make_trait_wtid (0, &bcs->wtid), + TALER_TESTING_make_trait_wtid (0, wtid_ptr), TALER_TESTING_make_trait_url (0, bcs->exchange_base_url), TALER_TESTING_trait_end () }; @@ -297,6 +299,22 @@ check_bank_empty_run (void *cls, TALER_TESTING_interpreter_next (is); } +/** + * FIXME. + */ +static int +check_bank_empty_traits (void *cls, + void **ret, + const char *trait, + unsigned int index) +{ + /** + * Some commands (notably "bank history") could randomly + * look for traits; this way makes sure we don't segfault. + */ + return GNUNET_SYSERR; +} + /** * Check bank's balance is zero. * @@ -312,6 +330,7 @@ TALER_TESTING_cmd_check_bank_empty (const char *label) cmd.label = label; cmd.run = &check_bank_empty_run; cmd.cleanup = &check_bank_empty_cleanup; + cmd.traits = &check_bank_empty_traits; return cmd; } @@ -331,6 +350,7 @@ TALER_TESTING_cmd_check_bank_transfer_with_ref bcs = GNUNET_new (struct BankCheckState); bcs->deposit_reference = deposit_reference; + cmd.label = label; cmd.cls = bcs; cmd.run = &check_bank_transfer_run; -- cgit v1.2.3