mirror of
https://github.com/zeromq/libzmq.git
synced 2024-12-27 15:41:05 +08:00
Merge pull request #1847 from bluca/test_large_msg
Problem: test_large_msg requires 2GB of free RAM
This commit is contained in:
commit
340eb52165
1
.gitignore
vendored
1
.gitignore
vendored
@ -126,7 +126,6 @@ test_poller
|
||||
test_timers
|
||||
test_radio_dish
|
||||
test_udp
|
||||
test_large_msg
|
||||
test_use_fd_ipc
|
||||
test_use_fd_tcp
|
||||
tests/test*.log
|
||||
|
@ -339,7 +339,6 @@ test_apps = \
|
||||
tests/test_invalid_rep \
|
||||
tests/test_msg_flags \
|
||||
tests/test_msg_ffn \
|
||||
tests/test_large_msg \
|
||||
tests/test_connect_resolve \
|
||||
tests/test_immediate \
|
||||
tests/test_last_endpoint \
|
||||
@ -443,9 +442,6 @@ tests_test_msg_flags_LDADD = src/libzmq.la
|
||||
tests_test_msg_ffn_SOURCES = tests/test_msg_ffn.cpp
|
||||
tests_test_msg_ffn_LDADD = src/libzmq.la
|
||||
|
||||
tests_test_large_msg_SOURCES = tests/test_large_msg.cpp
|
||||
tests_test_large_msg_LDADD = src/libzmq.la
|
||||
|
||||
tests_test_connect_resolve_SOURCES = tests/test_connect_resolve.cpp
|
||||
tests_test_connect_resolve_LDADD = src/libzmq.la
|
||||
|
||||
|
@ -132,17 +132,6 @@
|
||||
'libzmq'
|
||||
],
|
||||
},
|
||||
{
|
||||
'target_name': 'test_large_msg',
|
||||
'type': 'executable',
|
||||
'sources': [
|
||||
'../../tests/test_large_msg.cpp',
|
||||
'../../tests/testutil.hpp'
|
||||
],
|
||||
'dependencies': [
|
||||
'libzmq'
|
||||
],
|
||||
},
|
||||
{
|
||||
'target_name': 'test_connect_resolve',
|
||||
'type': 'executable',
|
||||
|
@ -11,7 +11,6 @@
|
||||
<test name = "test_invalid_rep" />
|
||||
<test name = "test_msg_flags" />
|
||||
<test name = "test_msg_ffn" />
|
||||
<test name = "test_large_msg" />
|
||||
<test name = "test_connect_resolve" />
|
||||
<test name = "test_immediate" />
|
||||
<test name = "test_last_endpoint" />
|
||||
|
@ -74,7 +74,6 @@ set(tests
|
||||
test_xpub_manual
|
||||
test_xpub_welcome_msg
|
||||
test_timers
|
||||
test_large_msg
|
||||
test_radio_dish
|
||||
test_udp
|
||||
)
|
||||
|
@ -1,87 +0,0 @@
|
||||
/*
|
||||
Copyright (c) 2007-2016 Contributors as noted in the AUTHORS file
|
||||
|
||||
This file is part of libzmq, the ZeroMQ core engine in C++.
|
||||
|
||||
libzmq is free software; you can redistribute it and/or modify it under
|
||||
the terms of the GNU Lesser General Public License (LGPL) as published
|
||||
by the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
As a special exception, the Contributors give you permission to link
|
||||
this library with independent modules to produce an executable,
|
||||
regardless of the license terms of these independent modules, and to
|
||||
copy and distribute the resulting executable under terms of your choice,
|
||||
provided that you also meet, for each linked independent module, the
|
||||
terms and conditions of the license of that module. An independent
|
||||
module is a module which is not derived from or based on this library.
|
||||
If you modify this library, you must extend this exception to your
|
||||
version of the library.
|
||||
|
||||
libzmq 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 Lesser General Public
|
||||
License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <limits.h>
|
||||
#include "testutil.hpp"
|
||||
|
||||
int main (void)
|
||||
{
|
||||
setup_test_environment();
|
||||
void *ctx = zmq_ctx_new ();
|
||||
assert (ctx);
|
||||
|
||||
void *sb = zmq_socket (ctx, ZMQ_PAIR);
|
||||
assert (sb);
|
||||
int rc = zmq_bind (sb, "tcp://127.0.0.1:5560");
|
||||
assert (rc == 0);
|
||||
|
||||
void *sc = zmq_socket (ctx, ZMQ_PAIR);
|
||||
assert (sc);
|
||||
rc = zmq_connect (sc, "tcp://127.0.0.1:5560");
|
||||
assert (rc == 0);
|
||||
|
||||
zmq_msg_t msg, rcv;
|
||||
size_t big = 64 + (size_t) INT_MAX;
|
||||
|
||||
rc = zmq_msg_init_size (&msg, big);
|
||||
assert (rc == 0);
|
||||
size_t sz = zmq_msg_size(&msg);
|
||||
assert (sz == big);
|
||||
|
||||
rc = zmq_msg_send(&msg, sb, 0);
|
||||
assert (rc >= 0); // first check success
|
||||
assert (rc == INT_MAX); // check truncated max return value
|
||||
|
||||
rc = zmq_msg_close(&msg);
|
||||
assert (rc == 0);
|
||||
|
||||
rc = zmq_msg_init(&rcv);
|
||||
assert (rc == 0);
|
||||
|
||||
rc = zmq_msg_recv(&rcv, sc, 0);
|
||||
assert (rc >= 0); // first check success
|
||||
assert (rc == INT_MAX); // check truncated max return value
|
||||
|
||||
sz = zmq_msg_size(&rcv);
|
||||
assert (sz == big); // check message is still the right size
|
||||
|
||||
rc = zmq_msg_close(&rcv);
|
||||
assert (rc == 0);
|
||||
|
||||
rc = zmq_close (sc);
|
||||
assert (rc == 0);
|
||||
|
||||
rc = zmq_close (sb);
|
||||
assert (rc == 0);
|
||||
|
||||
rc = zmq_ctx_term (ctx);
|
||||
assert (rc == 0);
|
||||
|
||||
return 0 ;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user