diff options
author | Markus Teich <markus.teich@stusta.mhn.de> | 2016-08-16 20:58:20 +0200 |
---|---|---|
committer | Markus Teich <markus.teich@stusta.mhn.de> | 2016-08-16 20:58:20 +0200 |
commit | fe7b13889217f4268d87d3712cb9ffe265e6a4e2 (patch) | |
tree | 59a17a13bdd9f22281bb0a59d8056675814a0cfd /test_brandt.c | |
parent | 01c2b8d710ff5a526d1ae2ed2a7fafdec0b1f973 (diff) |
some stuff
- finish BRANDT_destroy()
- fix include mess related to platform.h and brandt_config.h
- add first brandt.c testcase
Diffstat (limited to 'test_brandt.c')
-rw-r--r-- | test_brandt.c | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/test_brandt.c b/test_brandt.c new file mode 100644 index 0000000..d61700b --- /dev/null +++ b/test_brandt.c @@ -0,0 +1,124 @@ +/* This file is part of libbrandt. + * Copyright (C) 2016 GNUnet e.V. + * + * libbrandt is free software: you can redistribute it and/or modify it under + * the terms of the GNU General Public License as published by the Free Software + * Foundation, either version 3 of the License, or (at your option) any later + * version. + * + * libbrandt is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + * A PARTICULAR PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with + * libbrandt. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @file test_brandt.c + * @brief testing API functions. + * @author Markus Teich + */ + +#include "platform.h" + +#include <gnunet/gnunet_util_lib.h> + +#include "brandt.h" +#include "crypto.h" +#include "test.h" +#include "util.h" + + +static void +run_new_join (void *arg) +{ + int *ret = arg; + const char description[] = "test description for test_new_join"; + struct BRANDT_Auction *ad_seller; + struct BRANDT_Auction *ad_bidder; + void *desc; + size_t desc_len; + + ad_seller = BRANDT_new (NULL, + NULL, + NULL, + &desc, + &desc_len, + description, + sizeof (description), + GNUNET_TIME_absolute_get (), + GNUNET_TIME_UNIT_MINUTES, + 8, + 0, + 1); + if (!ad_seller) + { + weprintf ("BRANDT_new() failed."); + *ret = 0; + return; + } + + + ad_bidder = BRANDT_join (NULL, + NULL, + NULL, + NULL, + desc, + desc_len, + description, + sizeof (description)); + if (!ad_bidder) + { + weprintf ("BRANDT_join() failed."); + *ret = 0; + return; + } + + BRANDT_destroy (ad_seller); + BRANDT_destroy (ad_bidder); + + *ret = 1; +} + + +static int +test_new_join () +{ + int ret = 0; + + GNUNET_SCHEDULER_run (&run_new_join, &ret); + return ret; +} + + +/* + static void + cleanup_auction_data () + { + for (uint16_t i = 0; i < bidders; i++) + { + } + free (ad); + } + */ + + +int +main (int argc, char *argv[]) +{ + int repeat = 1; + struct GNUNET_CRYPTO_EccDlogContext *edc; + + edc = GNUNET_CRYPTO_ecc_dlog_prepare (1024, 16); + BRANDT_init (edc); + + RUN (test_new_join); + + for (tests_run = 0; tests_run < repeat; tests_run++) + { + } + + GNUNET_CRYPTO_ecc_dlog_release (edc); + return ret; +} |