aboutsummaryrefslogtreecommitdiff
path: root/src/protocol/bus0/bug1247_test.c
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2020-11-16 20:44:29 -0800
committerGarrett D'Amore <garrett@damore.org>2020-11-18 21:05:16 -0800
commitb826bfc171d90f8bde7bd672c0ac14201b8b2742 (patch)
tree5c416487f24104e6305a797af31c5e8b1aab99d1 /src/protocol/bus0/bug1247_test.c
parentcda4885676f009e2e7f2ad5e6c52743efc8b8924 (diff)
downloadnng-b826bfc171d90f8bde7bd672c0ac14201b8b2742.tar.gz
nng-b826bfc171d90f8bde7bd672c0ac14201b8b2742.tar.bz2
nng-b826bfc171d90f8bde7bd672c0ac14201b8b2742.zip
Work for test refactoring.
There are a few major areas in this change. * CMake options are now located in a common cmake/NNGOptions.cmake file. This should make it easier for folks to figure out what the options are, and how they are used. * Tests are now scoped with their directory name, which should avoid possible name collisions with test names. * A number of tests have been either moved or incorporated into the newer testutil/acutest framework. We are moving away from my old c-convey framework to something easier to debug. * We use CMake directories a bit more extensively leading to a much cleaner CMake structure. It's not complete, but a big step in the right direction, and a preview of future work. * Tests are now run with verbose flags, so we get more test results in the CI/CD logs.
Diffstat (limited to 'src/protocol/bus0/bug1247_test.c')
-rw-r--r--src/protocol/bus0/bug1247_test.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/protocol/bus0/bug1247_test.c b/src/protocol/bus0/bug1247_test.c
new file mode 100644
index 00000000..6f418f53
--- /dev/null
+++ b/src/protocol/bus0/bug1247_test.c
@@ -0,0 +1,39 @@
+//
+// Copyright 2020 Staysail Systems, Inc. <info@staysail.tech>
+//
+// This software is supplied under the terms of the MIT License, a
+// copy of which should be located in the distribution where this
+// file was obtained (LICENSE.txt). A copy of the license may also be
+// found online at https://opensource.org/licenses/MIT.
+//
+
+#include <string.h>
+
+#include <nng/nng.h>
+#include <nng/protocol/bus0/bus.h>
+
+#include "acutest.h"
+#include "testutil.h"
+
+void
+test_bug1247(void)
+{
+ nng_socket bus1, bus2;
+ char addr[64];
+
+ testutil_scratch_addr("tcp", sizeof(addr), addr);
+
+ TEST_NNG_PASS(nng_bus0_open(&bus1));
+ TEST_NNG_PASS(nng_bus0_open(&bus2));
+
+ TEST_NNG_PASS(nng_listen(bus1, addr, NULL, 0));
+ TEST_NNG_FAIL(nng_listen(bus2, addr, NULL, 0), NNG_EADDRINUSE);
+
+ TEST_NNG_PASS(nng_close(bus2));
+ TEST_NNG_PASS(nng_close(bus1));
+}
+
+TEST_LIST = {
+ { "bug1247", test_bug1247 },
+ { NULL, NULL },
+};