mirror of
https://github.com/zeromq/libzmq.git
synced 2024-12-12 18:40:27 +01: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_timers
|
||||||
test_radio_dish
|
test_radio_dish
|
||||||
test_udp
|
test_udp
|
||||||
test_large_msg
|
|
||||||
test_use_fd_ipc
|
test_use_fd_ipc
|
||||||
test_use_fd_tcp
|
test_use_fd_tcp
|
||||||
tests/test*.log
|
tests/test*.log
|
||||||
|
@ -339,7 +339,6 @@ test_apps = \
|
|||||||
tests/test_invalid_rep \
|
tests/test_invalid_rep \
|
||||||
tests/test_msg_flags \
|
tests/test_msg_flags \
|
||||||
tests/test_msg_ffn \
|
tests/test_msg_ffn \
|
||||||
tests/test_large_msg \
|
|
||||||
tests/test_connect_resolve \
|
tests/test_connect_resolve \
|
||||||
tests/test_immediate \
|
tests/test_immediate \
|
||||||
tests/test_last_endpoint \
|
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_SOURCES = tests/test_msg_ffn.cpp
|
||||||
tests_test_msg_ffn_LDADD = src/libzmq.la
|
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_SOURCES = tests/test_connect_resolve.cpp
|
||||||
tests_test_connect_resolve_LDADD = src/libzmq.la
|
tests_test_connect_resolve_LDADD = src/libzmq.la
|
||||||
|
|
||||||
|
@ -132,17 +132,6 @@
|
|||||||
'libzmq'
|
'libzmq'
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
|
||||||
'target_name': 'test_large_msg',
|
|
||||||
'type': 'executable',
|
|
||||||
'sources': [
|
|
||||||
'../../tests/test_large_msg.cpp',
|
|
||||||
'../../tests/testutil.hpp'
|
|
||||||
],
|
|
||||||
'dependencies': [
|
|
||||||
'libzmq'
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
'target_name': 'test_connect_resolve',
|
'target_name': 'test_connect_resolve',
|
||||||
'type': 'executable',
|
'type': 'executable',
|
||||||
|
@ -11,7 +11,6 @@
|
|||||||
<test name = "test_invalid_rep" />
|
<test name = "test_invalid_rep" />
|
||||||
<test name = "test_msg_flags" />
|
<test name = "test_msg_flags" />
|
||||||
<test name = "test_msg_ffn" />
|
<test name = "test_msg_ffn" />
|
||||||
<test name = "test_large_msg" />
|
|
||||||
<test name = "test_connect_resolve" />
|
<test name = "test_connect_resolve" />
|
||||||
<test name = "test_immediate" />
|
<test name = "test_immediate" />
|
||||||
<test name = "test_last_endpoint" />
|
<test name = "test_last_endpoint" />
|
||||||
|
@ -74,7 +74,6 @@ set(tests
|
|||||||
test_xpub_manual
|
test_xpub_manual
|
||||||
test_xpub_welcome_msg
|
test_xpub_welcome_msg
|
||||||
test_timers
|
test_timers
|
||||||
test_large_msg
|
|
||||||
test_radio_dish
|
test_radio_dish
|
||||||
test_udp
|
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…
Reference in New Issue
Block a user