libzmq/tests
Frederic Tregon 625b618776 Fixed ZMQ_REQ_CORRELATE (see pull request #1730)
Problem: Since pull request #1730 was merged, protocol for REQ socket is
checked at the session level and this check does not take into account
the possibility of a request_id being part of the message. Thus the option
ZMQ_REQ_CORRELATE would no longer work.
This is now fixed: the possiblity of a 4 bytes integer being present
before the delimiter frame is taken into account (whether or not this
breaks the REQ/REP RFC is another issue).
2016-04-02 18:36:29 +02:00
..
CMakeLists.txt Problem: test_large_msg requires 2GB of free RAM 2016-03-16 21:47:58 +00:00
README.md Problem: Tests do no build in Windows environment 2016-03-05 11:23:23 -06:00
test_abstract_ipc.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_atomics.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_bind_src_address.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_capabilities.cpp Problem: use of libsodium vs. tweetnacl is confused 2016-02-11 13:32:01 +01:00
test_client_server.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_conflate.cpp Revert "Revert "Problem: deprecated use and reference of zmq_term"" 2016-02-01 23:00:06 +01:00
test_connect_delay_tipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_connect_resolve.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_connect_rid.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_ctx_destroy.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_ctx_options.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_diffserv.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_disconnect_inproc.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_filter_ipc.cpp Problem: tests don't build on Windows 2016-02-12 16:12:44 +01:00
test_fork.cpp Problem: test_fork does not clean up at exit 2016-02-13 11:35:51 +00:00
test_getsockopt_memset.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_heartbeats.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_hwm_pubsub.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_hwm.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_immediate.cpp Problem: various tests fail in slow environments 2016-02-13 18:01:03 +00:00
test_inproc_connect.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_invalid_rep.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_iov.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_ipc_wildcard.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_issue_566.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_last_endpoint.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_many_sockets.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_metadata.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_monitor.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_msg_ffn.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_msg_flags.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_pair_inproc.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_pair_ipc.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_pair_tcp.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_pair_tipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_pair_vmci.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_poller.cpp Problem: deprecated zmq_utils.h is still included 2016-02-01 11:34:36 +01:00
test_probe_router.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_proxy_single_socket.cpp Problem: deprecated zmq_utils.h is still included 2016-02-01 11:34:36 +01:00
test_proxy_terminate.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_proxy.cpp Problem: deprecated zmq_utils.h is still included 2016-02-01 11:34:36 +01:00
test_pub_invert_matching.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_radio_dish.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_req_correlate.cpp Fixed ZMQ_REQ_CORRELATE (see pull request #1730) 2016-04-02 18:36:29 +02:00
test_req_relaxed.cpp Fixed ZMQ_REQ_CORRELATE (see pull request #1730) 2016-04-02 18:36:29 +02:00
test_reqrep_device_tipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_reqrep_device.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_reqrep_inproc.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_reqrep_ipc.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_reqrep_tcp.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_reqrep_tipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_reqrep_vmci.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_router_handover.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_router_mandatory_hwm.cpp Problem: test_router_mandatory_hwm uses unitialised memory 2016-02-13 11:35:51 +00:00
test_router_mandatory_tipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_router_mandatory.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_security_curve.cpp Problem: can't be sure crypto_box always returns 0 2016-03-01 15:01:23 +01:00
test_security_null.cpp Problem: tests don't build on Windows 2016-02-12 16:12:44 +01:00
test_security_plain.cpp Problem: tests don't build on Windows 2016-02-12 16:12:44 +01:00
test_setsockopt.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_shutdown_stress_tipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_shutdown_stress.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_sockopt_hwm.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_spec_dealer.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_spec_pushpull.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_spec_rep.cpp Problem: various tests fail in slow environments 2016-02-13 18:01:03 +00:00
test_spec_req.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_spec_router.cpp Problem: various tests fail in slow environments 2016-02-13 18:01:03 +00:00
test_srcfd.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_stream_disconnect.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_stream_empty.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_stream_exceeds_buffer.cpp Problem: tests don't build on Windows 2016-02-12 16:12:44 +01:00
test_stream_timeout.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_stream.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_sub_forward_tipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_sub_forward.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_system.cpp Problem: test_system does not clean up at exit 2016-02-13 11:35:51 +00:00
test_term_endpoint_tipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_term_endpoint.cpp Use FILENAME_MAX to determine BUFSIZE when getting socket path. 2016-03-17 15:12:57 -07:00
test_thread_safe.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_timeo.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_timers.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_udp.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_unbind_inproc.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_unbind_wildcard.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_use_fd_ipc.cpp Problem: tests don't build on Windows 2016-02-12 15:48:37 +01:00
test_use_fd_tcp.cpp Problem: test_pre_allocated_fd_tcp leaks addrinfo 2016-02-13 11:35:51 +00:00
test_xpub_manual.cpp Problem: tests use various sleep patterns to wait 2016-02-13 18:01:03 +00:00
test_xpub_nodrop.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
test_xpub_welcome_msg.cpp Problem: copyright year is still 2015 2016-01-28 15:07:31 +01:00
testutil.hpp Problem: SETTLE_TIME is too short on slow systems 2016-02-13 18:17:36 +00:00

Guidelines for tests

Write your test case as if you were writing clean application code. It should be safe to compile on all platforms.

The only include file you should use is testutil.hpp. Do not include files from src. Do not use the internal libzmq API or your test case is fair game to be deleted.

If you must write non-portable code, wrap it in #ifdefs to ensure it will compile and run on all systems.

Note that testutil.hpp includes platform.h. Do not include it yourself as it changes location depending on the build system and OS.

All sources must contain the correct header. Please copy from test_system.cpp if you're not certain.

Please use only ANSI C99 in test cases, no C++. This is to make the code more reusable.

On many slower environments, like embedded systems, VMs or CI systems, test might fail because it takes time for sockets to settle after a connect. If you need to add a sleep, please be consistent with all the other tests and use: msleep (SETTLE_TIME);

Building tests in Windows

Install CMAKE CMD> CMAKE libzmq/tests CMD> tests.sln CMD> # build all projects in the solution