From a2dde02b64a8ee75c9243632eb45a6ceb9b62dd5 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Wed, 7 Jun 2023 23:11:05 +0200 Subject: major libtalertesting API refactoring, including no longer having taler-specific logic in the test engine core --- src/testing/test_exchange_api_revocation.c | 107 +++++++++++------------------ 1 file changed, 41 insertions(+), 66 deletions(-) (limited to 'src/testing/test_exchange_api_revocation.c') diff --git a/src/testing/test_exchange_api_revocation.c b/src/testing/test_exchange_api_revocation.c index 33a92551d..c1c1b3190 100644 --- a/src/testing/test_exchange_api_revocation.c +++ b/src/testing/test_exchange_api_revocation.c @@ -1,6 +1,6 @@ /* This file is part of TALER - Copyright (C) 2014--2020 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 @@ -42,14 +42,9 @@ static char *config_file; /** - * Exchange configuration data. + * Our credentials. */ -static struct TALER_TESTING_ExchangeConfiguration ec; - -/** - * Bank configuration data. - */ -static struct TALER_TESTING_BankConfiguration bc; +static struct TALER_TESTING_Credentials cred; /** @@ -63,6 +58,18 @@ run (void *cls, struct TALER_TESTING_Interpreter *is) { struct TALER_TESTING_Command revocation[] = { + TALER_TESTING_cmd_run_fakebank ("run-fakebank", + cred.cfg, + "exchange-account-2"), + TALER_TESTING_cmd_system_start ("start-taler", + config_file, + "-e", + NULL), + TALER_TESTING_cmd_get_exchange ("get-exchange", + cred.cfg, + true, + true), +#if 0 TALER_TESTING_cmd_auditor_add ("add-auditor-OK", MHD_HTTP_NO_CONTENT, false), @@ -72,20 +79,20 @@ run (void *cls, false), TALER_TESTING_cmd_exec_offline_sign_keys ("offline-sign-future-keys", config_file), - TALER_TESTING_cmd_check_keys_pull_all_keys ("refetch /keys", - 1), +#endif + TALER_TESTING_cmd_check_keys_pull_all_keys ("refetch /keys"), /** * Fill reserve with EUR:10.02, as withdraw fee is 1 ct per * config. */ TALER_TESTING_cmd_admin_add_incoming ("create-reserve-1", "EUR:10.02", - &bc.exchange_auth, - bc.user42_payto), + &cred.ba, + cred.user42_payto), TALER_TESTING_cmd_check_bank_admin_transfer ("check-create-reserve-1", "EUR:10.02", - bc.user42_payto, - bc.exchange_payto, + cred.user42_payto, + cred.exchange_payto, "create-reserve-1"), /** * Run wire-watch to trigger the reserve creation. @@ -109,7 +116,7 @@ run (void *cls, TALER_TESTING_cmd_deposit ("deposit-partial", "withdraw-revocation-coin-1", 0, - bc.user42_payto, + cred.user42_payto, "{\"items\":[{\"name\":\"ice cream\",\"value\":\"EUR:1\"}]}", GNUNET_TIME_UNIT_ZERO, "EUR:1", @@ -118,7 +125,7 @@ run (void *cls, TALER_TESTING_cmd_deposit ("deposit-full", "withdraw-revocation-coin-2", 0, - bc.user42_payto, + cred.user42_payto, "{\"items\":[{\"name\":\"ice cream\",\"value\":\"EUR:5\"}]}", GNUNET_TIME_UNIT_ZERO, "EUR:5", @@ -241,9 +248,8 @@ run (void *cls, }; (void) cls; - TALER_TESTING_run_with_fakebank (is, - revocation, - bc.exchange_auth.wire_gateway_url); + TALER_TESTING_run (is, + revocation); } @@ -251,56 +257,25 @@ int main (int argc, char *const *argv) { - char *cipher; - (void) argc; - /* These environment variables get in the way... */ - unsetenv ("XDG_DATA_HOME"); - unsetenv ("XDG_CONFIG_HOME"); - GNUNET_log_setup (argv[0], - "INFO", - NULL); - cipher = GNUNET_TESTING_get_testname_from_underscore (argv[0]); - GNUNET_assert (NULL != cipher); - GNUNET_asprintf (&config_file, - "test_exchange_api-%s.conf", - cipher); - GNUNET_free (cipher); - /* Check fakebank port is available and get config */ - if (GNUNET_OK != - TALER_TESTING_prepare_fakebank (config_file, - "exchange-account-2", - &bc)) - return 77; - TALER_TESTING_cleanup_files (config_file); - /* @helpers. Run keyup, create tables, ... Note: it - * fetches the port number from config in order to see - * if it's available. */ - switch (TALER_TESTING_prepare_exchange (config_file, - GNUNET_YES, - &ec)) { - case GNUNET_SYSERR: - GNUNET_break (0); - return 1; - case GNUNET_NO: - return 77; - case GNUNET_OK: - if (GNUNET_OK != - /* Set up event loop and reschedule context, plus - * start/stop the exchange. It calls TALER_TESTING_setup - * which creates the 'is' object. - */ - TALER_TESTING_setup_with_exchange (&run, - NULL, - config_file)) - return 1; - break; - default: - GNUNET_break (0); - return 1; + char *cipher; + + cipher = GNUNET_TESTING_get_testname_from_underscore (argv[0]); + GNUNET_assert (NULL != cipher); + GNUNET_asprintf (&config_file, + "test_exchange_api-%s.conf", + cipher); + GNUNET_free (cipher); } - return 0; + return TALER_TESTING_main (argv, + "INFO", + config_file, + "exchange-account-2", + TALER_TESTING_BS_FAKEBANK, + &cred, + &run, + NULL); } -- cgit v1.2.3