aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2017-08-14 15:36:41 -0700
committerGarrett D'Amore <garrett@damore.org>2017-08-14 15:36:41 -0700
commit9a938f1c13d20478a024c08bbb9ef0b9ff5c03a5 (patch)
tree30b01200d4958379a13fb0694ca3729bb23a432d
parent63479c2938cbc80c1aac9367cb95564f6e7540e1 (diff)
downloadnng-9a938f1c13d20478a024c08bbb9ef0b9ff5c03a5.tar.gz
nng-9a938f1c13d20478a024c08bbb9ef0b9ff5c03a5.tar.bz2
nng-9a938f1c13d20478a024c08bbb9ef0b9ff5c03a5.zip
Added shutdown test from legacy nanomsg.
-rw-r--r--tests/CMakeLists.txt2
-rw-r--r--tests/compat_shutdown.c46
2 files changed, 48 insertions, 0 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index dc20b3c8..73484a4a 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -105,3 +105,5 @@ add_nng_compat_test(compat_pipeline 5)
add_nng_compat_test(compat_reqrep 5)
add_nng_compat_test(compat_survey 5)
add_nng_compat_test(compat_reqttl 5)
+add_nng_compat_test(compat_shutdown 5)
+
diff --git a/tests/compat_shutdown.c b/tests/compat_shutdown.c
new file mode 100644
index 00000000..834eacee
--- /dev/null
+++ b/tests/compat_shutdown.c
@@ -0,0 +1,46 @@
+/*
+ Copyright (c) 2013 GoPivotal, Inc. All rights reserved.
+ Copyright 2016 Franklin "Snaipe" Mathieu <franklinmathieu@gmail.com>
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"),
+ to deal in the Software without restriction, including without limitation
+ the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ and/or sell copies of the Software, and to permit persons to whom
+ the Software is furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ IN THE SOFTWARE.
+*/
+
+#include "nng_compat.h"
+#include "compat_testutil.h"
+
+int main (int argc, const char *argv[])
+{
+ int s;
+ int rc;
+ int eid;
+ char socket_address[128];
+
+ test_addr_from(socket_address, "tcp", "127.0.0.1",
+ get_test_port(argc, argv));
+
+ /* Run endpoint shutdown and socket shutdown in parallel. */
+ s = test_socket (AF_SP, NN_REQ);
+ eid = test_connect (s, socket_address);
+ rc = nn_shutdown (s, eid);
+ errno_assert (rc == 0);
+ test_close (s);
+
+ return 0;
+}
+