From 9a938f1c13d20478a024c08bbb9ef0b9ff5c03a5 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Mon, 14 Aug 2017 15:36:41 -0700 Subject: Added shutdown test from legacy nanomsg. --- tests/CMakeLists.txt | 2 ++ tests/compat_shutdown.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 tests/compat_shutdown.c 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 + + 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; +} + -- cgit v1.2.3-70-g09d2