aboutsummaryrefslogtreecommitdiff
path: root/test_brandt.c
diff options
context:
space:
mode:
Diffstat (limited to 'test_brandt.c')
-rw-r--r--test_brandt.c124
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;
+}