exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit cb6aab590b93e619fd5ca1fd18f3dd1fcefd5696
parent 049e9c89c14f7701f46b5d7b71d54a06331774d3
Author: Marcello Stanisci <stanisci.m@gmail.com>
Date:   Mon,  9 Sep 2019 16:46:01 +0200

Provide method to launch Fakebank withOUT running tests.

Diffstat:
Msrc/bank-lib/testing_api_helpers.c | 36++++++++++++++++++++++++++++++++++++
Msrc/include/taler_testing_bank_lib.h | 11+++++++++++
2 files changed, 47 insertions(+), 0 deletions(-)

diff --git a/src/bank-lib/testing_api_helpers.c b/src/bank-lib/testing_api_helpers.c @@ -26,6 +26,7 @@ #include "platform.h" #include <gnunet/gnunet_util_lib.h> #include "taler_testing_bank_lib.h" +#include "taler_fakebank_lib.h" /* Keep each bank account credentials at index: * bank account number - 1 */ @@ -47,6 +48,41 @@ struct TALER_BANK_AuthenticationData AUTHS[] = { .details.basic.password = USER_PASSWORD } }; + +/** + * Runs the Fakebank by guessing / extracting the portnumber + * from the base URL. + * + * @param bank_url bank's base URL. + * @return the fakebank process handle, or NULL if any + * error occurs. + */ +struct TALER_FAKEBANK_Handle * +TALER_TESTING_run_fakebank (const char *bank_url) +{ + const char *port; + long pnum; + struct TALER_FAKEBANK_Handle *fakebankd; + + port = strrchr (bank_url, + (unsigned char) ':'); + if (NULL == port) + pnum = 80; + else + pnum = strtol (port + 1, NULL, 10); + GNUNET_log (GNUNET_ERROR_TYPE_INFO, + "Starting Fakebank on port %u (%s)\n", + (unsigned int) pnum, + bank_url); + fakebankd = TALER_FAKEBANK_start ((uint16_t) pnum); + if (NULL == fakebankd) + { + GNUNET_break (0); + return NULL; + } + return fakebankd; +} + /** * Start the (Python) bank process. Assume the port * is available and the database is clean. Use the "prepare diff --git a/src/include/taler_testing_bank_lib.h b/src/include/taler_testing_bank_lib.h @@ -68,6 +68,17 @@ TALER_TESTING_run_bank (const char *config_filename, const char *bank_url); /** + * Runs the Fakebank by guessing / extracting the portnumber + * from the base URL. + * + * @param bank_url bank's base URL. + * @return the fakebank process handle, or NULL if any + * error occurs. + */ +struct TALER_FAKEBANK_Handle * +TALER_TESTING_run_fakebank (const char *bank_url); + +/** * Prepare the bank execution. Check if the port is available * and reset database. *