aboutsummaryrefslogtreecommitdiff
path: root/src/dhtu
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2021-09-23 22:52:20 +0200
committerChristian Grothoff <christian@grothoff.org>2021-09-23 22:52:20 +0200
commit8f18cbcaf6025d40fa1d400f5a4e702ad957809a (patch)
treed6cf2493590f5fd0091c17b6e30bda7ca56fbf9a /src/dhtu
parentb2cf59bdd77a76cdbeade6e948ca39e1085def35 (diff)
downloadgnunet-8f18cbcaf6025d40fa1d400f5a4e702ad957809a.tar.gz
gnunet-8f18cbcaf6025d40fa1d400f5a4e702ad957809a.zip
-add first dhtu test skeleton
Diffstat (limited to 'src/dhtu')
-rw-r--r--src/dhtu/Makefile.am16
-rw-r--r--src/dhtu/test_dhtu_ip.c77
2 files changed, 93 insertions, 0 deletions
diff --git a/src/dhtu/Makefile.am b/src/dhtu/Makefile.am
index 33c31dd6c..61ca84ee3 100644
--- a/src/dhtu/Makefile.am
+++ b/src/dhtu/Makefile.am
@@ -39,3 +39,19 @@ libgnunet_plugin_dhtu_gnunet_la_LIBADD = \
39 $(LTLIBINTL) 39 $(LTLIBINTL)
40libgnunet_plugin_dhtu_gnunet_la_LDFLAGS = \ 40libgnunet_plugin_dhtu_gnunet_la_LDFLAGS = \
41 $(GN_PLUGIN_LDFLAGS) 41 $(GN_PLUGIN_LDFLAGS)
42
43
44test_dhtu_ip_SOURCES = \
45 test_dhtu_ip.c
46test_dhtu_ip_LDADD = \
47 $(top_builddir)/src/testing/libgnunettesting.la \
48 $(top_builddir)/src/util/libgnunetutil.la
49
50check_PROGRAMS = \
51 test_dhtu_ip
52
53if ENABLE_TEST_RUN
54AM_TESTS_ENVIRONMENT=export GNUNET_PREFIX=$${GNUNET_PREFIX:-@libdir@};export PATH=$${GNUNET_PREFIX:-@prefix@}/bin:$$PATH;unset XDG_DATA_HOME;unset XDG_CONFIG_HOME;
55TESTS = \
56 $(check_PROGRAMS)
57endif
diff --git a/src/dhtu/test_dhtu_ip.c b/src/dhtu/test_dhtu_ip.c
new file mode 100644
index 000000000..f350905b8
--- /dev/null
+++ b/src/dhtu/test_dhtu_ip.c
@@ -0,0 +1,77 @@
1/*
2 This file is part of GNUnet
3 Copyright (C) 2021 GNUnet e.V.
4
5 GNUnet is free software: you can redistribute it and/or modify it
6 under the terms of the GNU Affero General Public License as published
7 by the Free Software Foundation, either version 3 of the License,
8 or (at your option) any later version.
9
10 GNUnet is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Affero General Public License for more details.
14
15 You should have received a copy of the GNU Affero General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17
18 SPDX-License-Identifier: AGPL3.0-or-later
19 */
20
21/**
22 * @file dhtu/test_dhtu_ip.c
23 * @brief Test case for the DHTU implementation for IP
24 * @author Christian Grothoff
25 */
26#include "platform.h"
27#include "gnunet_testing_ng_lib.h"
28#include "gnunet_util_lib.h"
29
30#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 120)
31
32#define CONFIG_FILE "test_dhtu_ip.conf"
33
34
35/**
36 * Return value of the test.
37 *
38 */
39static int rv;
40
41
42/**
43 * Main function to run the test cases.
44 *
45 * @param cls not used.
46 */
47static void
48run (void *cls)
49{
50 struct GNUNET_TESTING_Command commands[] = {
51 GNUNET_TESTING_cmd_netjail_start_v2 ("netjail-start",
52 CONFIG_FILE),
53 GNUNET_TESTING_cmd_netjail_stop_v2 ("netjail-stop",
54 CONFIG_FILE),
55 GNUNET_TESTING_cmd_end ()
56 };
57
58 (void) cls;
59 if (GNUNET_OK !=
60 GNUNET_TESTING_run (NULL, /* config file */
61 commands,
62 TIMEOUT))
63 {
64 GNUNET_break (0);
65 rv = EXIT_FAILURE;
66 }
67}
68
69
70int
71main (int argc,
72 char *const *argv)
73{
74 GNUNET_SCHEDULER_run (&run,
75 NULL);
76 return rv;
77}