diff options
author | Christian Grothoff <christian@grothoff.org> | 2018-01-21 20:10:05 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2018-01-21 20:10:05 +0100 |
commit | de092c2c2b4184e5276923a92e19a859c1cc07aa (patch) | |
tree | 562052b9a7aff8093d7aade8c8ef6e65bb5474e7 /src/exchange-lib/testing_api_helpers.c | |
parent | 652bb0f9c4d9527c409db6a99a7e550c57328adf (diff) | |
download | exchange-de092c2c2b4184e5276923a92e19a859c1cc07aa.tar.xz |
make fakebank_url more robust
Diffstat (limited to 'src/exchange-lib/testing_api_helpers.c')
-rw-r--r-- | src/exchange-lib/testing_api_helpers.c | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/exchange-lib/testing_api_helpers.c b/src/exchange-lib/testing_api_helpers.c index fd3d2ddf0..2d1e866fe 100644 --- a/src/exchange-lib/testing_api_helpers.c +++ b/src/exchange-lib/testing_api_helpers.c @@ -95,6 +95,7 @@ TALER_TESTING_prepare_exchange (const char *config_filename) GNUNET_log_config_missing (GNUNET_ERROR_TYPE_ERROR, "exchange", "PORT"); + GNUNET_CONFIGURATION_destroy (cfg); return GNUNET_NO; } GNUNET_CONFIGURATION_destroy (cfg); @@ -324,4 +325,46 @@ TALER_TESTING_url_port_free (const char *url) return GNUNET_OK; } + +/** + * Prepare launching a fakebank. Check that the configuration + * file has the right option, and that the port is avaiable. + * If everything is OK, return the configured URL of the fakebank. + * + * @param config_filename configuration file to use + * @return NULL on error, fakebank URL otherwise + */ +char * +TALER_TESTING_prepare_fakebank (const char *config_filename) +{ + struct GNUNET_CONFIGURATION_Handle *cfg; + char *fakebank_url; + + cfg = GNUNET_CONFIGURATION_create (); + if (GNUNET_OK != + GNUNET_CONFIGURATION_load (cfg, + config_filename)) + return NULL; + if (GNUNET_OK != + GNUNET_CONFIGURATION_get_value_string (cfg, + "exchange-wire-test", + "BANK_URI", + &fakebank_url)) + { + GNUNET_log_config_missing (GNUNET_ERROR_TYPE_WARNING, + "exchange-wire-test", + "BANK_URI"); + GNUNET_CONFIGURATION_destroy (cfg); + return NULL; + } + GNUNET_CONFIGURATION_destroy (cfg); + if (GNUNET_OK != + TALER_TESTING_url_port_free (fakebank_url)) + { + GNUNET_free (fakebank_url); + return NULL; + } + return fakebank_url; +} + /* end of testing_api_helpers.c */ |