libuv/test
Ben Noordhuis fa1da18549 test: canonicalize argv[0] in exepath test
Commit ff29322b ("test: canonicalize test runner path") from 2014
changed the test runner to call `realpath(3)` on `argv[0]` in order
to fix the `get_currentexe` test failing with the autotools build when
the executable path contained symbolic links but that is now causing
the `spawn_reads_child_path` test to fail on z/os with the cmake build.

Fix that by only doing path canonicalization in the `get_currentexe`
test, not always.

An auxiliary fix is applied to the `process_title_threadsafe` test
because it assumed that setting the process title to a long string,
then reading it back produces in the original string.

On some platforms however the maximum size of the process title is
limited to the size of the `argv` vector.

Because the test runner used absolute paths until now, the argv vector
was bigger than it is with relative paths, big enough to let this bad
assumption go unnoticed until now.

Minor fixes are applied to tests that assumed 1024 for the maximum
path size because this commit makes visible that some of the CI matrix
systems support much longer paths.

PR-URL: https://github.com/libuv/libuv/pull/2755
Refs: https://github.com/libuv/libuv/pull/2737#issuecomment-602800431
Refs: https://github.com/libuv/libuv/pull/2754#issuecomment-604015785
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2020-03-27 23:51:22 +01:00
..
fixtures unix: make uv_fs_read() fill all buffers 2019-06-20 12:06:31 +02:00
benchmark-async-pummel.c src,lib: fix comments 2018-05-22 16:34:33 -04:00
benchmark-async.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
benchmark-fs-stat.c unix,windows: allow NULL loop for sync fs requests 2015-08-18 15:39:21 +02:00
benchmark-getaddrinfo.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-list.h test: added udp ping benchmark (1,10,100 pingers) 2020-02-20 11:52:18 +01:00
benchmark-loop-count.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-million-async.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
benchmark-million-timers.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-multi-accept.c pipe: disallow listening on an IPC pipe 2020-01-31 11:09:16 +01:00
benchmark-ping-pongs.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-ping-udp.c test: added udp ping benchmark (1,10,100 pingers) 2020-02-20 11:52:18 +01:00
benchmark-pound.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-pump.c test: fix -Wstrict-prototypes warnings 2017-10-05 22:26:55 +02:00
benchmark-sizes.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-spawn.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-tcp-write-batch.c include: merge uv_tcp_connect and uv_tcp_connect6 2013-09-04 03:16:36 +02:00
benchmark-thread.c Make the thread_create benchmark not time out 2012-03-09 17:53:48 +01:00
benchmark-udp-pummel.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
blackhole-server.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
dns-server.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
echo-server.c test: fixed udp4_echo_server implementation 2020-02-20 11:51:16 +01:00
run-benchmarks.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
run-tests.c test: skip some spawn test cases on IBMi 2020-02-28 13:21:43 -05:00
runner-unix.c test: canonicalize argv[0] in exepath test 2020-03-27 23:51:22 +01:00
runner-unix.h Add copyright headers, license file. 2011-04-18 11:11:30 -07:00
runner-win.c test: avoid truncating output lines 2020-01-16 17:46:31 -05:00
runner-win.h warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
runner.c test: add UV_TIMEOUT_MULTIPLIER environment var 2020-02-28 13:50:28 -05:00
runner.h test: canonicalize argv[0] in exepath test 2020-03-27 23:51:22 +01:00
task.h test: add a bunch of ASSERT macros 2020-03-27 14:51:49 +01:00
test-active.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-async-null-cb.c sunos: fix cmpxchgi and cmpxchgl type error 2017-07-01 00:24:42 +02:00
test-async.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-barrier.c test: add uv_barrier_wait serial thread test 2018-10-08 11:14:41 +02:00
test-callback-order.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-callback-stack.c src,test: fix idiosyncratic comment style 2018-05-29 11:56:49 -07:00
test-close-fd.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-close-order.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-condvar.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-connect-unspecified.c test: fix connect_unspecified 2018-03-08 11:37:00 +01:00
test-connection-fail.c src,test: fix idiosyncratic comment style 2018-05-29 11:56:49 -07:00
test-cwd-and-chdir.c test: canonicalize argv[0] in exepath test 2020-03-27 23:51:22 +01:00
test-default-loop-close.c test: add test for closing and recreating default loop 2014-09-15 21:34:09 +02:00
test-delayed-accept.c src,test: fix idiosyncratic comment style 2018-05-29 11:56:49 -07:00
test-dlerror.c test: fix test failure under NetBSD and OpenBSD 2019-12-16 15:31:02 +01:00
test-eintr-handling.c Revert "unix,fs: fix for potential partial reads/writes" 2018-01-19 17:51:08 +01:00
test-embed.c build: GNU/kFreeBSD support 2016-08-20 08:55:30 +02:00
test-emfile.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-env-vars.c test: fix env-vars flakiness 2020-01-13 20:48:55 -05:00
test-error.c src: add new error apis to prevent memory leaks 2018-07-06 19:35:21 +02:00
test-fail-always.c Benchmark runner 2011-04-19 04:47:21 +02:00
test-fork.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-fs-copyfile.c ibmi: skip unsupported fs test cases 2020-01-26 17:51:49 +01:00
test-fs-event.c test: fix fs_event_watch_dir_recursive flakiness 2020-01-27 22:36:25 +01:00
test-fs-fd-hash.c win: add UV_FS_O_FILEMAP 2019-07-16 18:20:10 +02:00
test-fs-open-flags.c win: add UV_FS_O_FILEMAP 2019-07-16 18:20:10 +02:00
test-fs-poll.c unix,win: fix uv_fs_poll_stop() when active 2019-05-06 15:02:01 +02:00
test-fs-readdir.c test: fix order of operations in test 2019-10-06 16:07:01 +02:00
test-fs.c test: canonicalize argv[0] in exepath test 2020-03-27 23:51:22 +01:00
test-get-currentexe.c test: canonicalize argv[0] in exepath test 2020-03-27 23:51:22 +01:00
test-get-loadavg.c test: fix -Wtautological-pointer-compare warnings 2015-11-18 22:37:16 +01:00
test-get-memory.c ibmi: set the amount of memory in use to zero 2020-03-10 11:00:03 +01:00
test-get-passwd.c test: skip the pwd_shell test on IBMi 2020-02-28 14:03:38 -05:00
test-getaddrinfo.c win: fix free() on bad input in uv_getaddrinfo() 2017-01-08 16:29:37 -05:00
test-gethostname.c src,include: define UV_MAXHOSTNAMESIZE 2019-02-05 08:46:28 -05:00
test-getnameinfo.c test: fix -Wtautological-pointer-compare warnings 2015-11-18 22:37:16 +01:00
test-getsockname.c unix, win: add send_queue_size and send_queue_count to uv_udp_t 2014-07-04 18:28:18 +02:00
test-getters-setters.c core: add getter/setter functions for easier ABI compat 2017-12-02 09:51:25 +01:00
test-gettimeofday.c unix,win: introduce uv_timeval64_t 2019-04-11 14:08:17 -04:00
test-handle-fileno.c stream: autodetect direction 2018-09-19 18:19:28 +02:00
test-homedir.c test: canonicalize argv[0] in exepath test 2020-03-27 23:51:22 +01:00
test-hrtime.c test: relax uv_hrtime() test assumptions 2019-02-21 13:02:44 +01:00
test-idle.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
test-idna.c unix,win: support IDNA 2008 in uv_getaddrinfo() 2018-10-30 20:50:23 +01:00
test-ip4-addr.c unix: set sin_len and sin6_len 2019-10-04 23:58:18 +02:00
test-ip6-addr.c unix: set sin_len and sin6_len 2019-10-04 23:58:18 +02:00
test-ipc-heavy-traffic-deadlock-bug.c test: fix test-ipc tests 2019-01-15 09:49:33 +01:00
test-ipc-send-recv.c unix: don't send handle twice on partial write 2018-12-30 20:13:48 +01:00
test-ipc.c test: add a bunch of ASSERT macros 2020-03-27 14:51:49 +01:00
test-list.h unix: fix signal handle closing deferral 2020-03-10 10:58:29 +01:00
test-loop-alive.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-loop-close.c test: add threadpool init/teardown test 2017-12-06 23:47:38 +01:00
test-loop-configure.c linux: fix epoll_pwait() sigmask size calculation 2014-12-25 14:37:02 +01:00
test-loop-handles.c test: remove call to floor() in test driver 2019-03-16 13:22:56 -04:00
test-loop-stop.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-loop-time.c windows: add uv_backend_timeout 2014-08-04 23:18:38 +02:00
test-multiple-listen.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
test-mutexes.c unix,win: add uv_mutex_init_recursive() 2017-10-02 10:01:09 -04:00
test-osx-select.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
test-pass-always.c Benchmark runner 2011-04-19 04:47:21 +02:00
test-ping-pong.c test: add vectored uv_write() ping-pong tests 2018-05-29 13:01:23 -07:00
test-pipe-bind-error.c test: skip self-connecting tests on cygwin 2017-05-21 16:12:30 +02:00
test-pipe-close-stdout-read-stdin.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-pipe-connect-error.c unix, windows: return error codes directly 2013-07-07 09:51:00 +02:00
test-pipe-connect-multiple.c test: skip self-connecting tests on cygwin 2017-05-21 16:12:30 +02:00
test-pipe-connect-prepare.c unix: don't block for io if any io handle is primed 2015-05-12 07:37:26 +02:00
test-pipe-getsockname.c test: avoid AF_LOCAL 2019-08-01 22:16:31 +02:00
test-pipe-pending-instances.c win: fix setting pipe pending instances after bind 2015-08-24 23:20:35 +02:00
test-pipe-sendmsg.c cygwin: disable non-functional ipc handle send 2017-05-21 16:12:28 +02:00
test-pipe-server-close.c test: skip self-connecting tests on cygwin 2017-05-21 16:12:30 +02:00
test-pipe-set-fchmod.c src,test: fix idiosyncratic comment style 2018-05-29 11:56:49 -07:00
test-pipe-set-non-blocking.c test: fix race condition in multithreaded test 2015-03-11 15:42:34 +01:00
test-platform-output.c test: skip some test cases on IBMi 2019-12-16 15:33:04 +01:00
test-poll-close-doesnt-corrupt-stack.c test: fix -fno-common build errors 2020-01-10 11:09:04 -05:00
test-poll-close.c code style: strip trailing whitespace 2013-12-20 19:38:37 -08:00
test-poll-closesocket.c test: fix -fno-common build errors 2020-01-10 11:09:04 -05:00
test-poll-oob.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-poll.c test: handle EINTR, fix EOF check in poll test 2020-02-29 09:37:56 +01:00
test-process-priority.c test: handle uv_os_setpriority() windows edge case 2018-09-25 20:56:37 -04:00
test-process-title-threadsafe.c test: canonicalize argv[0] in exepath test 2020-03-27 23:51:22 +01:00
test-process-title.c unix: fix size check in uv_get_process_title() 2020-02-08 12:28:34 +01:00
test-queue-foreach-delete.c test: fix gcc 8 warnings for tests 2019-08-06 12:01:15 -04:00
test-random.c unix,win: add uv_random() 2019-09-18 08:09:14 +02:00
test-ref.c test: factor out fsevents skip explanation 2017-05-21 16:12:08 +02:00
test-run-nowait.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-run-once.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-semaphore.c unix, windows: return error codes directly 2013-07-07 09:51:00 +02:00
test-shutdown-close.c unix, windows: make uv_is_*() always return 0 or 1 2013-09-12 13:30:06 +02:00
test-shutdown-eof.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-shutdown-twice.c unix,test: deadstore fixes 2017-04-05 09:57:20 -04:00
test-signal-multiple-loops.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-signal-pending-on-close.c unix: fix signal handle closing deferral 2020-03-10 10:58:29 +01:00
test-signal.c win, process: uv_kill improvements 2017-12-07 14:00:05 +01:00
test-socket-buffer-size.c unix, windows: add uv_recv_buffer_size and uv_send_buffer_size 2014-08-09 11:36:35 +02:00
test-spawn.c zos,test: fix spawn_empty_env for shared library build 2020-03-24 09:33:39 -04:00
test-stdio-over-pipes.c win,pipe: ensure req->event_handle is defined 2020-02-27 09:12:52 +01:00
test-strscpy.c unix: harden string copying, introduce strscpy() 2018-12-04 17:08:09 +01:00
test-tcp-alloc-cb-fail.c unix,win: make on_alloc_cb failures more resilient 2016-08-17 09:57:55 +02:00
test-tcp-bind6-error.c test: skip ipv6 tests when ipv6 is not supported 2014-12-29 17:14:48 +01:00
test-tcp-bind-error.c tcp: add uv_tcp_close_reset method 2019-08-19 23:41:15 +02:00
test-tcp-close-accept.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-tcp-close-reset.c test: fix -Wsign-compare warning 2019-09-06 22:48:06 +02:00
test-tcp-close-while-connecting.c test: fix tcp_close_while_connecting CI failures 2016-10-14 01:57:15 +02:00
test-tcp-close.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
test-tcp-connect6-error.c include: merge uv_tcp_connect and uv_tcp_connect6 2013-09-04 03:16:36 +02:00
test-tcp-connect-error-after-write.c include: merge uv_tcp_connect and uv_tcp_connect6 2013-09-04 03:16:36 +02:00
test-tcp-connect-error.c include: merge uv_tcp_connect and uv_tcp_connect6 2013-09-04 03:16:36 +02:00
test-tcp-connect-timeout.c tests: skip some tests when network is unreachable 2015-07-13 10:28:46 +02:00
test-tcp-create-socket-early.c cygwin: implement support for cygwin and msys2 2017-05-21 16:12:21 +02:00
test-tcp-flags.c unix, windows: rename uv_run2 to uv_run 2013-01-16 23:35:29 +01:00
test-tcp-oob.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-tcp-open.c test: fix warning in test-tcp-open 2018-08-16 10:28:49 +02:00
test-tcp-read-stop.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-tcp-shutdown-after-write.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-tcp-try-write-error.c test: allow UV_ECONNRESET in tcp_try_write_error 2019-06-27 17:23:53 -04:00
test-tcp-try-write.c stream: support empty uv_try_write on unix 2015-10-04 18:06:08 -04:00
test-tcp-unexpected-read.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-tcp-write-after-connect.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-tcp-write-fail.c win, test: fix compilation warning 2015-09-29 09:57:27 +02:00
test-tcp-write-queue-order.c test: increase connection timeout to 1 second 2018-03-31 17:05:26 -04:00
test-tcp-write-to-half-open-connection.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
test-tcp-writealot.c test: fix test-tcp-writealot flakiness on arm 2016-09-12 08:33:41 +02:00
test-thread-equal.c unix, windows: add uv_thread_equal 2014-10-20 09:51:49 +02:00
test-thread.c test: fix pthread memory leak 2020-01-07 23:25:50 -05:00
test-threadpool-cancel.c unix,win: add uv_random() 2019-09-18 08:09:14 +02:00
test-threadpool.c unix, windows: return error codes directly 2013-07-07 09:51:00 +02:00
test-timer-again.c src,test: fix idiosyncratic comment style 2018-05-29 11:56:49 -07:00
test-timer-from-check.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-timer.c timer: fix uv_timer_start on closing timer 2019-08-23 20:42:37 +02:00
test-tmpdir.c test: canonicalize argv[0] in exepath test 2020-03-27 23:51:22 +01:00
test-tty-duplicate-key.c win: fix duplicate tty vt100 fn key 2019-02-10 10:04:18 -05:00
test-tty-escape-sequence-processing.c win,tty: Added set cursor style to CSI sequences 2020-02-29 14:11:36 +09:00
test-tty.c warnings: fix code that emits compiler warnings 2018-11-29 11:21:44 -05:00
test-udp-alloc-cb-fail.c src,test: fix idiosyncratic comment style 2018-05-29 11:56:49 -07:00
test-udp-bind.c unix, windows: do not set SO_REUSEADDR by default on udp 2014-04-02 01:21:35 +02:00
test-udp-connect.c test: skip some UDP tests on IBMi 2020-02-28 11:51:36 +01:00
test-udp-create-socket-early.c cygwin: implement support for cygwin and msys2 2017-05-21 16:12:21 +02:00
test-udp-dgram-too-big.c include: merge uv_udp_send and uv_udp_send6 2013-09-04 03:17:29 +02:00
test-udp-ipv6.c test,udp6: fix udp_ipv6 test flakiness 2020-01-27 14:58:56 -05:00
test-udp-multicast-interface6.c build: GNU/kFreeBSD support 2016-08-20 08:55:30 +02:00
test-udp-multicast-interface.c test: allow multicast not permitted status 2018-01-09 14:32:35 +01:00
test-udp-multicast-join6.c test: add specific source multicast tests 2019-08-23 21:12:58 +02:00
test-udp-multicast-join.c test: fix test failure under NetBSD and OpenBSD 2019-12-16 15:31:02 +01:00
test-udp-multicast-ttl.c test: allow multicast not permitted status 2018-01-09 14:32:35 +01:00
test-udp-open.c unix: support sockaddr_un in uv_udp_send() 2019-04-11 11:04:43 -04:00
test-udp-options.c win: allow setting udp socket options before bind 2018-06-04 09:19:06 -04:00
test-udp-send-and-recv.c src,test: fix idiosyncratic comment style 2018-05-29 11:56:49 -07:00
test-udp-send-hang-loop.c test: allow net unreachable status in udp test 2018-01-09 15:09:46 +01:00
test-udp-send-immediate.c src,test: fix idiosyncratic comment style 2018-05-29 11:56:49 -07:00
test-udp-send-unreachable.c windows: fix buffer leak after failed udp send 2014-08-28 08:41:43 +02:00
test-udp-try-send.c win,udp: implements uv_udp_try_send 2017-07-01 17:20:15 +02:00
test-uname.c unix,win: add uv_os_uname() 2019-01-14 10:47:20 -05:00
test-walk-handles.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-watcher-cross-stop.c test: skip some UDP tests on IBMi 2020-02-28 11:51:36 +01:00
test.gyp win,tty: Added set cursor style to CSI sequences 2020-02-29 14:11:36 +09:00