1/* Copyright Joyent, Inc. and other Node contributors. All rights reserved.
2 *
3 * Permission is hereby granted, free of charge, to any person obtaining a copy
4 * of this software and associated documentation files (the "Software"), to
5 * deal in the Software without restriction, including without limitation the
6 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7 * sell copies of the Software, and to permit persons to whom the Software is
8 * furnished to do so, subject to the following conditions:
9 *
10 * The above copyright notice and this permission notice shall be included in
11 * all copies or substantial portions of the Software.
12 *
13 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19 * IN THE SOFTWARE.
20 */
21
22#include "uv.h"
23
24TEST_DECLARE (platform_output)
25TEST_DECLARE (callback_order)
26TEST_DECLARE (close_order)
27TEST_DECLARE (run_once)
28TEST_DECLARE (run_nowait)
29TEST_DECLARE (loop_alive)
30TEST_DECLARE (loop_close)
31TEST_DECLARE (loop_instant_close)
32TEST_DECLARE (loop_stop)
33TEST_DECLARE (loop_update_time)
34TEST_DECLARE (loop_backend_timeout)
35TEST_DECLARE (loop_configure)
36TEST_DECLARE (default_loop_close)
37TEST_DECLARE (barrier_1)
38TEST_DECLARE (barrier_2)
39TEST_DECLARE (barrier_3)
40TEST_DECLARE (barrier_serial_thread)
41TEST_DECLARE (barrier_serial_thread_single)
42TEST_DECLARE (condvar_1)
43TEST_DECLARE (condvar_2)
44TEST_DECLARE (condvar_3)
45TEST_DECLARE (condvar_4)
46TEST_DECLARE (condvar_5)
47TEST_DECLARE (semaphore_1)
48TEST_DECLARE (semaphore_2)
49TEST_DECLARE (semaphore_3)
50TEST_DECLARE (tty)
51#ifdef _WIN32
52TEST_DECLARE (tty_raw)
53TEST_DECLARE (tty_empty_write)
54TEST_DECLARE (tty_large_write)
55TEST_DECLARE (tty_raw_cancel)
56TEST_DECLARE (tty_duplicate_vt100_fn_key)
57TEST_DECLARE (tty_duplicate_alt_modifier_key)
58TEST_DECLARE (tty_composing_character)
59#endif
60TEST_DECLARE (tty_file)
61TEST_DECLARE (tty_pty)
62TEST_DECLARE (stdio_over_pipes)
63TEST_DECLARE (ip6_pton)
64TEST_DECLARE (connect_unspecified)
65TEST_DECLARE (ipc_heavy_traffic_deadlock_bug)
66TEST_DECLARE (ipc_listen_before_write)
67TEST_DECLARE (ipc_listen_after_write)
68#ifndef _WIN32
69TEST_DECLARE (ipc_send_recv_pipe)
70TEST_DECLARE (ipc_send_recv_pipe_inprocess)
71#endif
72TEST_DECLARE (ipc_send_recv_tcp)
73TEST_DECLARE (ipc_send_recv_tcp_inprocess)
74TEST_DECLARE (ipc_tcp_connection)
75TEST_DECLARE (ipc_send_zero)
76#ifndef _WIN32
77TEST_DECLARE (ipc_closed_handle)
78#endif
79TEST_DECLARE (tcp_alloc_cb_fail)
80TEST_DECLARE (tcp_ping_pong)
81TEST_DECLARE (tcp_ping_pong_vec)
82TEST_DECLARE (tcp6_ping_pong)
83TEST_DECLARE (tcp6_ping_pong_vec)
84TEST_DECLARE (pipe_ping_pong)
85TEST_DECLARE (pipe_ping_pong_vec)
86TEST_DECLARE (delayed_accept)
87TEST_DECLARE (multiple_listen)
88#ifndef _WIN32
89TEST_DECLARE (tcp_write_after_connect)
90#endif
91TEST_DECLARE (tcp_writealot)
92TEST_DECLARE (tcp_write_fail)
93TEST_DECLARE (tcp_try_write)
94TEST_DECLARE (tcp_try_write_error)
95TEST_DECLARE (tcp_write_queue_order)
96TEST_DECLARE (tcp_open)
97TEST_DECLARE (tcp_open_twice)
98TEST_DECLARE (tcp_open_bound)
99TEST_DECLARE (tcp_open_connected)
100TEST_DECLARE (tcp_connect_error_after_write)
101TEST_DECLARE (tcp_shutdown_after_write)
102TEST_DECLARE (tcp_bind_error_addrinuse)
103TEST_DECLARE (tcp_bind_error_addrnotavail_1)
104TEST_DECLARE (tcp_bind_error_addrnotavail_2)
105TEST_DECLARE (tcp_bind_error_fault)
106TEST_DECLARE (tcp_bind_error_inval)
107TEST_DECLARE (tcp_bind_localhost_ok)
108TEST_DECLARE (tcp_bind_invalid_flags)
109TEST_DECLARE (tcp_bind_writable_flags)
110TEST_DECLARE (tcp_listen_without_bind)
111TEST_DECLARE (tcp_connect_error_fault)
112TEST_DECLARE (tcp_connect_timeout)
113TEST_DECLARE (tcp_close_while_connecting)
114TEST_DECLARE (tcp_close)
115TEST_DECLARE (tcp_create_early)
116TEST_DECLARE (tcp_create_early_bad_bind)
117TEST_DECLARE (tcp_create_early_bad_domain)
118TEST_DECLARE (tcp_create_early_accept)
119#ifndef _WIN32
120TEST_DECLARE (tcp_close_accept)
121TEST_DECLARE (tcp_oob)
122#endif
123TEST_DECLARE (tcp_flags)
124TEST_DECLARE (tcp_write_to_half_open_connection)
125TEST_DECLARE (tcp_unexpected_read)
126TEST_DECLARE (tcp_read_stop)
127TEST_DECLARE (tcp_bind6_error_addrinuse)
128TEST_DECLARE (tcp_bind6_error_addrnotavail)
129TEST_DECLARE (tcp_bind6_error_fault)
130TEST_DECLARE (tcp_bind6_error_inval)
131TEST_DECLARE (tcp_bind6_localhost_ok)
132TEST_DECLARE (tcp_write_ready)
133TEST_DECLARE (udp_alloc_cb_fail)
134TEST_DECLARE (udp_bind)
135TEST_DECLARE (udp_bind_reuseaddr)
136TEST_DECLARE (udp_connect)
137TEST_DECLARE (udp_create_early)
138TEST_DECLARE (udp_create_early_bad_bind)
139TEST_DECLARE (udp_create_early_bad_domain)
140TEST_DECLARE (udp_send_and_recv)
141TEST_DECLARE (udp_send_hang_loop)
142TEST_DECLARE (udp_send_immediate)
143TEST_DECLARE (udp_send_unreachable)
144TEST_DECLARE (udp_multicast_join)
145TEST_DECLARE (udp_multicast_join6)
146TEST_DECLARE (udp_multicast_ttl)
147TEST_DECLARE (udp_multicast_interface)
148TEST_DECLARE (udp_multicast_interface6)
149TEST_DECLARE (udp_dgram_too_big)
150TEST_DECLARE (udp_dual_stack)
151TEST_DECLARE (udp_ipv6_only)
152TEST_DECLARE (udp_options)
153TEST_DECLARE (udp_options6)
154TEST_DECLARE (udp_no_autobind)
155TEST_DECLARE (udp_open)
156TEST_DECLARE (udp_open_twice)
157TEST_DECLARE (udp_open_bound)
158TEST_DECLARE (udp_open_connect)
159#ifndef _WIN32
160TEST_DECLARE (udp_send_unix)
161#endif
162TEST_DECLARE (udp_try_send)
163TEST_DECLARE (pipe_bind_error_addrinuse)
164TEST_DECLARE (pipe_bind_error_addrnotavail)
165TEST_DECLARE (pipe_bind_error_inval)
166TEST_DECLARE (pipe_connect_multiple)
167TEST_DECLARE (pipe_listen_without_bind)
168TEST_DECLARE (pipe_connect_bad_name)
169TEST_DECLARE (pipe_connect_to_file)
170TEST_DECLARE (pipe_connect_on_prepare)
171TEST_DECLARE (pipe_getsockname)
172TEST_DECLARE (pipe_getsockname_abstract)
173TEST_DECLARE (pipe_getsockname_blocking)
174TEST_DECLARE (pipe_pending_instances)
175TEST_DECLARE (pipe_sendmsg)
176TEST_DECLARE (pipe_server_close)
177TEST_DECLARE (connection_fail)
178TEST_DECLARE (connection_fail_doesnt_auto_close)
179TEST_DECLARE (shutdown_close_tcp)
180TEST_DECLARE (shutdown_close_pipe)
181TEST_DECLARE (shutdown_eof)
182TEST_DECLARE (shutdown_twice)
183TEST_DECLARE (callback_stack)
184TEST_DECLARE (env_vars)
185TEST_DECLARE (error_message)
186TEST_DECLARE (sys_error)
187TEST_DECLARE (timer)
188TEST_DECLARE (timer_init)
189TEST_DECLARE (timer_again)
190TEST_DECLARE (timer_start_twice)
191TEST_DECLARE (timer_order)
192TEST_DECLARE (timer_huge_timeout)
193TEST_DECLARE (timer_huge_repeat)
194TEST_DECLARE (timer_run_once)
195TEST_DECLARE (timer_from_check)
196TEST_DECLARE (timer_null_callback)
197TEST_DECLARE (timer_early_check)
198TEST_DECLARE (idle_starvation)
199TEST_DECLARE (loop_handles)
200TEST_DECLARE (get_loadavg)
201TEST_DECLARE (walk_handles)
202TEST_DECLARE (watcher_cross_stop)
203TEST_DECLARE (ref)
204TEST_DECLARE (idle_ref)
205TEST_DECLARE (async_ref)
206TEST_DECLARE (prepare_ref)
207TEST_DECLARE (check_ref)
208TEST_DECLARE (unref_in_prepare_cb)
209TEST_DECLARE (timer_ref)
210TEST_DECLARE (timer_ref2)
211TEST_DECLARE (fs_event_ref)
212TEST_DECLARE (fs_poll_ref)
213TEST_DECLARE (tcp_ref)
214TEST_DECLARE (tcp_ref2)
215TEST_DECLARE (tcp_ref2b)
216TEST_DECLARE (tcp_ref3)
217TEST_DECLARE (tcp_ref4)
218TEST_DECLARE (udp_ref)
219TEST_DECLARE (udp_ref2)
220TEST_DECLARE (udp_ref3)
221TEST_DECLARE (pipe_ref)
222TEST_DECLARE (pipe_ref2)
223TEST_DECLARE (pipe_ref3)
224TEST_DECLARE (pipe_ref4)
225#ifndef _WIN32
226TEST_DECLARE (pipe_close_stdout_read_stdin)
227#endif
228TEST_DECLARE (pipe_set_non_blocking)
229TEST_DECLARE (pipe_set_chmod)
230TEST_DECLARE (process_ref)
231TEST_DECLARE (process_priority)
232TEST_DECLARE (has_ref)
233TEST_DECLARE (active)
234TEST_DECLARE (embed)
235TEST_DECLARE (async)
236TEST_DECLARE (async_null_cb)
237TEST_DECLARE (eintr_handling)
238TEST_DECLARE (get_currentexe)
239TEST_DECLARE (process_title)
240TEST_DECLARE (process_title_threadsafe)
241TEST_DECLARE (cwd_and_chdir)
242TEST_DECLARE (get_memory)
243TEST_DECLARE (get_passwd)
244TEST_DECLARE (handle_fileno)
245TEST_DECLARE (homedir)
246TEST_DECLARE (tmpdir)
247TEST_DECLARE (hrtime)
248TEST_DECLARE (getaddrinfo_fail)
249TEST_DECLARE (getaddrinfo_fail_sync)
250TEST_DECLARE (getaddrinfo_basic)
251TEST_DECLARE (getaddrinfo_basic_sync)
252TEST_DECLARE (getaddrinfo_concurrent)
253TEST_DECLARE (gethostname)
254TEST_DECLARE (getnameinfo_basic_ip4)
255TEST_DECLARE (getnameinfo_basic_ip4_sync)
256TEST_DECLARE (getnameinfo_basic_ip6)
257TEST_DECLARE (getsockname_tcp)
258TEST_DECLARE (getsockname_udp)
259TEST_DECLARE (gettimeofday)
260TEST_DECLARE (fail_always)
261TEST_DECLARE (pass_always)
262TEST_DECLARE (socket_buffer_size)
263TEST_DECLARE (spawn_fails)
264#ifndef _WIN32
265TEST_DECLARE (spawn_fails_check_for_waitpid_cleanup)
266#endif
267TEST_DECLARE (spawn_exit_code)
268TEST_DECLARE (spawn_stdout)
269TEST_DECLARE (spawn_stdin)
270TEST_DECLARE (spawn_stdio_greater_than_3)
271TEST_DECLARE (spawn_ignored_stdio)
272TEST_DECLARE (spawn_and_kill)
273TEST_DECLARE (spawn_detached)
274TEST_DECLARE (spawn_and_kill_with_std)
275TEST_DECLARE (spawn_and_ping)
276TEST_DECLARE (spawn_preserve_env)
277TEST_DECLARE (spawn_setuid_fails)
278TEST_DECLARE (spawn_setgid_fails)
279TEST_DECLARE (spawn_stdout_to_file)
280TEST_DECLARE (spawn_stdout_and_stderr_to_file)
281TEST_DECLARE (spawn_stdout_and_stderr_to_file2)
282TEST_DECLARE (spawn_stdout_and_stderr_to_file_swap)
283TEST_DECLARE (spawn_auto_unref)
284TEST_DECLARE (spawn_closed_process_io)
285TEST_DECLARE (spawn_reads_child_path)
286TEST_DECLARE (spawn_inherit_streams)
287TEST_DECLARE (spawn_quoted_path)
288TEST_DECLARE (spawn_tcp_server)
289TEST_DECLARE (fs_poll)
290TEST_DECLARE (fs_poll_getpath)
291TEST_DECLARE (fs_poll_close_request)
292TEST_DECLARE (fs_poll_close_request_multi_start_stop)
293TEST_DECLARE (fs_poll_close_request_multi_stop_start)
294TEST_DECLARE (fs_poll_close_request_stop_when_active)
295TEST_DECLARE (kill)
296TEST_DECLARE (kill_invalid_signum)
297TEST_DECLARE (fs_file_noent)
298TEST_DECLARE (fs_file_nametoolong)
299TEST_DECLARE (fs_file_loop)
300TEST_DECLARE (fs_file_async)
301TEST_DECLARE (fs_file_sync)
302TEST_DECLARE (fs_file_write_null_buffer)
303TEST_DECLARE (fs_async_dir)
304TEST_DECLARE (fs_async_sendfile)
305TEST_DECLARE (fs_async_sendfile_nodata)
306TEST_DECLARE (fs_mkdtemp)
307TEST_DECLARE (fs_fstat)
308TEST_DECLARE (fs_access)
309TEST_DECLARE (fs_chmod)
310TEST_DECLARE (fs_copyfile)
311TEST_DECLARE (fs_unlink_readonly)
312#ifdef _WIN32
313TEST_DECLARE (fs_unlink_archive_readonly)
314#endif
315TEST_DECLARE (fs_chown)
316TEST_DECLARE (fs_link)
317TEST_DECLARE (fs_readlink)
318TEST_DECLARE (fs_realpath)
319TEST_DECLARE (fs_symlink)
320TEST_DECLARE (fs_symlink_dir)
321#ifdef _WIN32
322TEST_DECLARE (fs_symlink_junction)
323TEST_DECLARE (fs_non_symlink_reparse_point)
324#endif
325TEST_DECLARE (fs_utime)
326TEST_DECLARE (fs_futime)
327TEST_DECLARE (fs_file_open_append)
328TEST_DECLARE (fs_stat_missing_path)
329TEST_DECLARE (fs_read_bufs)
330TEST_DECLARE (fs_read_file_eof)
331TEST_DECLARE (fs_event_watch_dir)
332TEST_DECLARE (fs_event_watch_dir_recursive)
333#ifdef _WIN32
334TEST_DECLARE (fs_event_watch_dir_short_path)
335#endif
336TEST_DECLARE (fs_event_watch_file)
337TEST_DECLARE (fs_event_watch_file_exact_path)
338TEST_DECLARE (fs_event_watch_file_twice)
339TEST_DECLARE (fs_event_watch_file_current_dir)
340#ifdef _WIN32
341TEST_DECLARE (fs_event_watch_file_root_dir)
342#endif
343TEST_DECLARE (fs_event_watch_invalid_path)
344TEST_DECLARE (fs_event_no_callback_after_close)
345TEST_DECLARE (fs_event_no_callback_on_close)
346TEST_DECLARE (fs_event_immediate_close)
347TEST_DECLARE (fs_event_close_with_pending_event)
348TEST_DECLARE (fs_event_close_in_callback)
349TEST_DECLARE (fs_event_start_and_close)
350TEST_DECLARE (fs_event_error_reporting)
351TEST_DECLARE (fs_event_getpath)
352TEST_DECLARE (fs_scandir_empty_dir)
353TEST_DECLARE (fs_scandir_non_existent_dir)
354TEST_DECLARE (fs_scandir_file)
355TEST_DECLARE (fs_open_dir)
356TEST_DECLARE (fs_readdir_empty_dir)
357TEST_DECLARE (fs_readdir_file)
358TEST_DECLARE (fs_readdir_non_empty_dir)
359TEST_DECLARE (fs_readdir_non_existing_dir)
360TEST_DECLARE (fs_rename_to_existing_file)
361TEST_DECLARE (fs_write_multiple_bufs)
362TEST_DECLARE (fs_read_write_null_arguments)
363TEST_DECLARE (get_osfhandle_valid_handle)
364TEST_DECLARE (open_osfhandle_valid_handle)
365TEST_DECLARE (fs_write_alotof_bufs)
366TEST_DECLARE (fs_write_alotof_bufs_with_offset)
367TEST_DECLARE (fs_partial_read)
368TEST_DECLARE (fs_partial_write)
369TEST_DECLARE (fs_file_pos_after_op_with_offset)
370TEST_DECLARE (fs_null_req)
371TEST_DECLARE (fs_read_dir)
372#ifdef _WIN32
373TEST_DECLARE (fs_exclusive_sharing_mode)
374TEST_DECLARE (fs_file_flag_no_buffering)
375TEST_DECLARE (fs_open_readonly_acl)
376TEST_DECLARE (fs_fchmod_archive_readonly)
377#endif
378TEST_DECLARE (strscpy)
379TEST_DECLARE (threadpool_queue_work_simple)
380TEST_DECLARE (threadpool_queue_work_einval)
381TEST_DECLARE (threadpool_multiple_event_loops)
382TEST_DECLARE (threadpool_cancel_getaddrinfo)
383TEST_DECLARE (threadpool_cancel_getnameinfo)
384TEST_DECLARE (threadpool_cancel_work)
385TEST_DECLARE (threadpool_cancel_fs)
386TEST_DECLARE (threadpool_cancel_single)
387TEST_DECLARE (thread_local_storage)
388TEST_DECLARE (thread_stack_size)
389TEST_DECLARE (thread_stack_size_explicit)
390TEST_DECLARE (thread_mutex)
391TEST_DECLARE (thread_mutex_recursive)
392TEST_DECLARE (thread_rwlock)
393TEST_DECLARE (thread_rwlock_trylock)
394TEST_DECLARE (thread_create)
395TEST_DECLARE (thread_equal)
396TEST_DECLARE (dlerror)
397#if (defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))) && \
398 !defined(__sun)
399TEST_DECLARE (poll_oob)
400#endif
401TEST_DECLARE (poll_duplex)
402TEST_DECLARE (poll_unidirectional)
403TEST_DECLARE (poll_close)
404TEST_DECLARE (poll_bad_fdtype)
405#ifdef __linux__
406TEST_DECLARE (poll_nested_epoll)
407#endif
408#ifdef UV_HAVE_KQUEUE
409TEST_DECLARE (poll_nested_kqueue)
410#endif
411
412TEST_DECLARE (ip4_addr)
413TEST_DECLARE (ip6_addr_link_local)
414
415TEST_DECLARE (poll_close_doesnt_corrupt_stack)
416TEST_DECLARE (poll_closesocket)
417#ifdef _WIN32
418TEST_DECLARE (spawn_detect_pipe_name_collisions_on_windows)
419#if !defined(USING_UV_SHARED)
420TEST_DECLARE (argument_escaping)
421TEST_DECLARE (environment_creation)
422#endif
423TEST_DECLARE (listen_with_simultaneous_accepts)
424TEST_DECLARE (listen_no_simultaneous_accepts)
425TEST_DECLARE (fs_stat_root)
426TEST_DECLARE (spawn_with_an_odd_path)
427TEST_DECLARE (ipc_listen_after_bind_twice)
428TEST_DECLARE (win32_signum_number)
429#else
430TEST_DECLARE (emfile)
431TEST_DECLARE (close_fd)
432TEST_DECLARE (spawn_fs_open)
433TEST_DECLARE (spawn_setuid_setgid)
434TEST_DECLARE (we_get_signal)
435TEST_DECLARE (we_get_signals)
436TEST_DECLARE (we_get_signal_one_shot)
437TEST_DECLARE (we_get_signals_mixed)
438TEST_DECLARE (signal_multiple_loops)
439TEST_DECLARE (closed_fd_events)
440#endif
441#ifdef __APPLE__
442TEST_DECLARE (osx_select)
443TEST_DECLARE (osx_select_many_fds)
444#endif
445HELPER_DECLARE (tcp4_echo_server)
446HELPER_DECLARE (tcp6_echo_server)
447HELPER_DECLARE (udp4_echo_server)
448HELPER_DECLARE (pipe_echo_server)
449
450TEST_DECLARE (queue_foreach_delete)
451
452TEST_DECLARE (handle_type_name)
453TEST_DECLARE (req_type_name)
454TEST_DECLARE (getters_setters)
455
456#ifndef _WIN32
457TEST_DECLARE (fork_timer)
458TEST_DECLARE (fork_socketpair)
459TEST_DECLARE (fork_socketpair_started)
460TEST_DECLARE (fork_signal_to_child)
461TEST_DECLARE (fork_signal_to_child_closed)
462#ifndef __APPLE__ /* This is forbidden in a fork child: The process has forked
463 and you cannot use this CoreFoundation functionality
464 safely. You MUST exec(). */
465TEST_DECLARE (fork_fs_events_child)
466TEST_DECLARE (fork_fs_events_child_dir)
467TEST_DECLARE (fork_fs_events_file_parent_child)
468#endif
469#ifndef __MVS__
470TEST_DECLARE (fork_threadpool_queue_work_simple)
471#endif
472#endif
473
474TEST_DECLARE (idna_toascii)
475TEST_DECLARE (utf8_decode1)
476TEST_DECLARE (uname)
477
478TASK_LIST_START
479 TEST_ENTRY_CUSTOM (platform_output, 0, 1, 5000)
480
481#if 0
482 TEST_ENTRY (callback_order)
483#endif
484 TEST_ENTRY (close_order)
485 TEST_ENTRY (run_once)
486 TEST_ENTRY (run_nowait)
487 TEST_ENTRY (loop_alive)
488 TEST_ENTRY (loop_close)
489 TEST_ENTRY (loop_instant_close)
490 TEST_ENTRY (loop_stop)
491 TEST_ENTRY (loop_update_time)
492 TEST_ENTRY (loop_backend_timeout)
493 TEST_ENTRY (loop_configure)
494 TEST_ENTRY (default_loop_close)
495 TEST_ENTRY (barrier_1)
496 TEST_ENTRY (barrier_2)
497 TEST_ENTRY (barrier_3)
498 TEST_ENTRY (barrier_serial_thread)
499 TEST_ENTRY (barrier_serial_thread_single)
500 TEST_ENTRY (condvar_1)
501 TEST_ENTRY (condvar_2)
502 TEST_ENTRY (condvar_3)
503 TEST_ENTRY (condvar_4)
504 TEST_ENTRY (condvar_5)
505 TEST_ENTRY (semaphore_1)
506 TEST_ENTRY (semaphore_2)
507 TEST_ENTRY (semaphore_3)
508
509 TEST_ENTRY (pipe_connect_bad_name)
510 TEST_ENTRY (pipe_connect_to_file)
511 TEST_ENTRY (pipe_connect_on_prepare)
512
513 TEST_ENTRY (pipe_server_close)
514#ifndef _WIN32
515 TEST_ENTRY (pipe_close_stdout_read_stdin)
516#endif
517 TEST_ENTRY (pipe_set_non_blocking)
518 TEST_ENTRY (pipe_set_chmod)
519 TEST_ENTRY (tty)
520#ifdef _WIN32
521 TEST_ENTRY (tty_raw)
522 TEST_ENTRY (tty_empty_write)
523 TEST_ENTRY (tty_large_write)
524 TEST_ENTRY (tty_raw_cancel)
525 TEST_ENTRY (tty_duplicate_vt100_fn_key)
526 TEST_ENTRY (tty_duplicate_alt_modifier_key)
527 TEST_ENTRY (tty_composing_character)
528#endif
529 TEST_ENTRY (tty_file)
530 TEST_ENTRY (tty_pty)
531 TEST_ENTRY (stdio_over_pipes)
532 TEST_ENTRY (ip6_pton)
533 TEST_ENTRY (connect_unspecified)
534 TEST_ENTRY (ipc_heavy_traffic_deadlock_bug)
535 TEST_ENTRY (ipc_listen_before_write)
536 TEST_ENTRY (ipc_listen_after_write)
537#ifndef _WIN32
538 TEST_ENTRY (ipc_send_recv_pipe)
539 TEST_ENTRY (ipc_send_recv_pipe_inprocess)
540#endif
541 TEST_ENTRY (ipc_send_recv_tcp)
542 TEST_ENTRY (ipc_send_recv_tcp_inprocess)
543 TEST_ENTRY (ipc_tcp_connection)
544 TEST_ENTRY (ipc_send_zero)
545#ifndef _WIN32
546 TEST_ENTRY (ipc_closed_handle)
547#endif
548
549 TEST_ENTRY (tcp_alloc_cb_fail)
550
551 TEST_ENTRY (tcp_ping_pong)
552 TEST_HELPER (tcp_ping_pong, tcp4_echo_server)
553
554 TEST_ENTRY (tcp_ping_pong_vec)
555 TEST_HELPER (tcp_ping_pong_vec, tcp4_echo_server)
556
557 TEST_ENTRY (tcp6_ping_pong)
558 TEST_HELPER (tcp6_ping_pong, tcp6_echo_server)
559
560 TEST_ENTRY (tcp6_ping_pong_vec)
561 TEST_HELPER (tcp6_ping_pong_vec, tcp6_echo_server)
562
563 TEST_ENTRY (pipe_ping_pong)
564 TEST_HELPER (pipe_ping_pong, pipe_echo_server)
565
566 TEST_ENTRY (pipe_ping_pong_vec)
567 TEST_HELPER (pipe_ping_pong_vec, pipe_echo_server)
568
569 TEST_ENTRY (delayed_accept)
570 TEST_ENTRY (multiple_listen)
571
572#ifndef _WIN32
573 TEST_ENTRY (tcp_write_after_connect)
574#endif
575
576#ifdef __MVS__
577 TEST_ENTRY_CUSTOM (tcp_writealot, 0, 0, 20000)
578#else
579 TEST_ENTRY (tcp_writealot)
580#endif
581 TEST_HELPER (tcp_writealot, tcp4_echo_server)
582
583 TEST_ENTRY (tcp_write_fail)
584 TEST_HELPER (tcp_write_fail, tcp4_echo_server)
585
586 TEST_ENTRY (tcp_try_write)
587 TEST_ENTRY (tcp_try_write_error)
588
589 TEST_ENTRY (tcp_write_queue_order)
590
591 TEST_ENTRY (tcp_open)
592 TEST_HELPER (tcp_open, tcp4_echo_server)
593 TEST_ENTRY (tcp_open_twice)
594 TEST_ENTRY (tcp_open_bound)
595 TEST_ENTRY (tcp_open_connected)
596 TEST_HELPER (tcp_open_connected, tcp4_echo_server)
597 TEST_ENTRY (tcp_write_ready)
598 TEST_HELPER (tcp_write_ready, tcp4_echo_server)
599
600 TEST_ENTRY (tcp_shutdown_after_write)
601 TEST_HELPER (tcp_shutdown_after_write, tcp4_echo_server)
602
603 TEST_ENTRY (tcp_connect_error_after_write)
604 TEST_ENTRY (tcp_bind_error_addrinuse)
605 TEST_ENTRY (tcp_bind_error_addrnotavail_1)
606 TEST_ENTRY (tcp_bind_error_addrnotavail_2)
607 TEST_ENTRY (tcp_bind_error_fault)
608 TEST_ENTRY (tcp_bind_error_inval)
609 TEST_ENTRY (tcp_bind_localhost_ok)
610 TEST_ENTRY (tcp_bind_invalid_flags)
611 TEST_ENTRY (tcp_bind_writable_flags)
612 TEST_ENTRY (tcp_listen_without_bind)
613 TEST_ENTRY (tcp_connect_error_fault)
614 TEST_ENTRY (tcp_connect_timeout)
615 TEST_ENTRY (tcp_close_while_connecting)
616 TEST_ENTRY (tcp_close)
617 TEST_ENTRY (tcp_create_early)
618 TEST_ENTRY (tcp_create_early_bad_bind)
619 TEST_ENTRY (tcp_create_early_bad_domain)
620 TEST_ENTRY (tcp_create_early_accept)
621#ifndef _WIN32
622 TEST_ENTRY (tcp_close_accept)
623 TEST_ENTRY (tcp_oob)
624#endif
625 TEST_ENTRY (tcp_flags)
626 TEST_ENTRY (tcp_write_to_half_open_connection)
627 TEST_ENTRY (tcp_unexpected_read)
628
629 TEST_ENTRY (tcp_read_stop)
630 TEST_HELPER (tcp_read_stop, tcp4_echo_server)
631
632 TEST_ENTRY (tcp_bind6_error_addrinuse)
633 TEST_ENTRY (tcp_bind6_error_addrnotavail)
634 TEST_ENTRY (tcp_bind6_error_fault)
635 TEST_ENTRY (tcp_bind6_error_inval)
636 TEST_ENTRY (tcp_bind6_localhost_ok)
637
638 TEST_ENTRY (udp_alloc_cb_fail)
639 TEST_ENTRY (udp_bind)
640 TEST_ENTRY (udp_bind_reuseaddr)
641 TEST_ENTRY (udp_connect)
642 TEST_ENTRY (udp_create_early)
643 TEST_ENTRY (udp_create_early_bad_bind)
644 TEST_ENTRY (udp_create_early_bad_domain)
645 TEST_ENTRY (udp_send_and_recv)
646 TEST_ENTRY (udp_send_hang_loop)
647 TEST_ENTRY (udp_send_immediate)
648 TEST_ENTRY (udp_send_unreachable)
649 TEST_ENTRY (udp_dgram_too_big)
650 TEST_ENTRY (udp_dual_stack)
651 TEST_ENTRY (udp_ipv6_only)
652 TEST_ENTRY (udp_options)
653 TEST_ENTRY (udp_options6)
654 TEST_ENTRY (udp_no_autobind)
655 TEST_ENTRY (udp_multicast_interface)
656 TEST_ENTRY (udp_multicast_interface6)
657 TEST_ENTRY (udp_multicast_join)
658 TEST_ENTRY (udp_multicast_join6)
659 TEST_ENTRY (udp_multicast_ttl)
660 TEST_ENTRY (udp_try_send)
661
662 TEST_ENTRY (udp_open)
663 TEST_HELPER (udp_open, udp4_echo_server)
664 TEST_ENTRY (udp_open_twice)
665 TEST_ENTRY (udp_open_bound)
666 TEST_ENTRY (udp_open_connect)
667 TEST_HELPER (udp_open_connect, udp4_echo_server)
668#ifndef _WIN32
669 TEST_ENTRY (udp_send_unix)
670#endif
671
672 TEST_ENTRY (pipe_bind_error_addrinuse)
673 TEST_ENTRY (pipe_bind_error_addrnotavail)
674 TEST_ENTRY (pipe_bind_error_inval)
675 TEST_ENTRY (pipe_connect_multiple)
676 TEST_ENTRY (pipe_listen_without_bind)
677 TEST_ENTRY (pipe_getsockname)
678 TEST_ENTRY (pipe_getsockname_abstract)
679 TEST_ENTRY (pipe_getsockname_blocking)
680 TEST_ENTRY (pipe_pending_instances)
681 TEST_ENTRY (pipe_sendmsg)
682
683 TEST_ENTRY (connection_fail)
684 TEST_ENTRY (connection_fail_doesnt_auto_close)
685
686 TEST_ENTRY (shutdown_close_tcp)
687 TEST_HELPER (shutdown_close_tcp, tcp4_echo_server)
688 TEST_ENTRY (shutdown_close_pipe)
689 TEST_HELPER (shutdown_close_pipe, pipe_echo_server)
690
691 TEST_ENTRY (shutdown_eof)
692 TEST_HELPER (shutdown_eof, tcp4_echo_server)
693
694 TEST_ENTRY (shutdown_twice)
695 TEST_HELPER (shutdown_twice, tcp4_echo_server)
696
697 TEST_ENTRY (callback_stack)
698 TEST_HELPER (callback_stack, tcp4_echo_server)
699
700 TEST_ENTRY (env_vars)
701
702 TEST_ENTRY (error_message)
703 TEST_ENTRY (sys_error)
704
705 TEST_ENTRY (timer)
706 TEST_ENTRY (timer_init)
707 TEST_ENTRY (timer_again)
708 TEST_ENTRY (timer_start_twice)
709 TEST_ENTRY (timer_order)
710 TEST_ENTRY (timer_huge_timeout)
711 TEST_ENTRY (timer_huge_repeat)
712 TEST_ENTRY (timer_run_once)
713 TEST_ENTRY (timer_from_check)
714 TEST_ENTRY (timer_null_callback)
715 TEST_ENTRY (timer_early_check)
716
717 TEST_ENTRY (idle_starvation)
718
719 TEST_ENTRY (ref)
720 TEST_ENTRY (idle_ref)
721 TEST_ENTRY (fs_poll_ref)
722 TEST_ENTRY (async_ref)
723 TEST_ENTRY (prepare_ref)
724 TEST_ENTRY (check_ref)
725 TEST_ENTRY (unref_in_prepare_cb)
726 TEST_ENTRY (timer_ref)
727 TEST_ENTRY (timer_ref2)
728 TEST_ENTRY (fs_event_ref)
729 TEST_ENTRY (tcp_ref)
730 TEST_ENTRY (tcp_ref2)
731 TEST_ENTRY (tcp_ref2b)
732 TEST_ENTRY (tcp_ref3)
733 TEST_HELPER (tcp_ref3, tcp4_echo_server)
734 TEST_ENTRY (tcp_ref4)
735 TEST_HELPER (tcp_ref4, tcp4_echo_server)
736 TEST_ENTRY (udp_ref)
737 TEST_ENTRY (udp_ref2)
738 TEST_ENTRY (udp_ref3)
739 TEST_HELPER (udp_ref3, udp4_echo_server)
740 TEST_ENTRY (pipe_ref)
741 TEST_ENTRY (pipe_ref2)
742 TEST_ENTRY (pipe_ref3)
743 TEST_HELPER (pipe_ref3, pipe_echo_server)
744 TEST_ENTRY (pipe_ref4)
745 TEST_HELPER (pipe_ref4, pipe_echo_server)
746 TEST_ENTRY (process_ref)
747 TEST_ENTRY (process_priority)
748 TEST_ENTRY (has_ref)
749
750 TEST_ENTRY (loop_handles)
751 TEST_ENTRY (walk_handles)
752
753 TEST_ENTRY (watcher_cross_stop)
754
755 TEST_ENTRY (active)
756
757 TEST_ENTRY (embed)
758
759 TEST_ENTRY (async)
760 TEST_ENTRY (async_null_cb)
761 TEST_ENTRY (eintr_handling)
762
763 TEST_ENTRY (get_currentexe)
764
765 TEST_ENTRY (process_title)
766 TEST_ENTRY (process_title_threadsafe)
767
768 TEST_ENTRY (cwd_and_chdir)
769
770 TEST_ENTRY (get_memory)
771
772 TEST_ENTRY (get_passwd)
773
774 TEST_ENTRY (get_loadavg)
775
776 TEST_ENTRY (handle_fileno)
777
778 TEST_ENTRY (homedir)
779
780 TEST_ENTRY (tmpdir)
781
782 TEST_ENTRY_CUSTOM (hrtime, 0, 0, 10000)
783
784 TEST_ENTRY_CUSTOM (getaddrinfo_fail, 0, 0, 10000)
785 TEST_ENTRY_CUSTOM (getaddrinfo_fail_sync, 0, 0, 10000)
786
787 TEST_ENTRY (getaddrinfo_basic)
788 TEST_ENTRY (getaddrinfo_basic_sync)
789 TEST_ENTRY (getaddrinfo_concurrent)
790
791 TEST_ENTRY (gethostname)
792
793 TEST_ENTRY (getnameinfo_basic_ip4)
794 TEST_ENTRY (getnameinfo_basic_ip4_sync)
795 TEST_ENTRY (getnameinfo_basic_ip6)
796
797 TEST_ENTRY (getsockname_tcp)
798 TEST_ENTRY (getsockname_udp)
799
800 TEST_ENTRY (gettimeofday)
801
802 TEST_ENTRY (poll_duplex)
803 TEST_ENTRY (poll_unidirectional)
804 TEST_ENTRY (poll_close)
805 TEST_ENTRY (poll_bad_fdtype)
806#if (defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))) && \
807 !defined(__sun)
808 TEST_ENTRY (poll_oob)
809#endif
810
811#ifdef __linux__
812 TEST_ENTRY (poll_nested_epoll)
813#endif
814#ifdef UV_HAVE_KQUEUE
815 TEST_ENTRY (poll_nested_kqueue)
816#endif
817
818 TEST_ENTRY (socket_buffer_size)
819
820 TEST_ENTRY (spawn_fails)
821#ifndef _WIN32
822 TEST_ENTRY (spawn_fails_check_for_waitpid_cleanup)
823#endif
824 TEST_ENTRY (spawn_exit_code)
825 TEST_ENTRY (spawn_stdout)
826 TEST_ENTRY (spawn_stdin)
827 TEST_ENTRY (spawn_stdio_greater_than_3)
828 TEST_ENTRY (spawn_ignored_stdio)
829 TEST_ENTRY (spawn_and_kill)
830 TEST_ENTRY (spawn_detached)
831 TEST_ENTRY (spawn_and_kill_with_std)
832 TEST_ENTRY (spawn_and_ping)
833 TEST_ENTRY (spawn_preserve_env)
834 TEST_ENTRY (spawn_setuid_fails)
835 TEST_ENTRY (spawn_setgid_fails)
836 TEST_ENTRY (spawn_stdout_to_file)
837 TEST_ENTRY (spawn_stdout_and_stderr_to_file)
838 TEST_ENTRY (spawn_stdout_and_stderr_to_file2)
839 TEST_ENTRY (spawn_stdout_and_stderr_to_file_swap)
840 TEST_ENTRY (spawn_auto_unref)
841 TEST_ENTRY (spawn_closed_process_io)
842 TEST_ENTRY (spawn_reads_child_path)
843 TEST_ENTRY (spawn_inherit_streams)
844 TEST_ENTRY (spawn_quoted_path)
845 TEST_ENTRY (spawn_tcp_server)
846 TEST_ENTRY (fs_poll)
847 TEST_ENTRY (fs_poll_getpath)
848 TEST_ENTRY (fs_poll_close_request)
849 TEST_ENTRY (fs_poll_close_request_multi_start_stop)
850 TEST_ENTRY (fs_poll_close_request_multi_stop_start)
851 TEST_ENTRY (fs_poll_close_request_stop_when_active)
852 TEST_ENTRY (kill)
853 TEST_ENTRY (kill_invalid_signum)
854
855 TEST_ENTRY (poll_close_doesnt_corrupt_stack)
856 TEST_ENTRY (poll_closesocket)
857#ifdef _WIN32
858 TEST_ENTRY (spawn_detect_pipe_name_collisions_on_windows)
859#if !defined(USING_UV_SHARED)
860 TEST_ENTRY (argument_escaping)
861 TEST_ENTRY (environment_creation)
862# endif
863 TEST_ENTRY (listen_with_simultaneous_accepts)
864 TEST_ENTRY (listen_no_simultaneous_accepts)
865 TEST_ENTRY (fs_stat_root)
866 TEST_ENTRY (spawn_with_an_odd_path)
867 TEST_ENTRY (ipc_listen_after_bind_twice)
868 TEST_ENTRY (win32_signum_number)
869#else
870 TEST_ENTRY (emfile)
871 TEST_ENTRY (close_fd)
872 TEST_ENTRY (spawn_fs_open)
873 TEST_ENTRY (spawn_setuid_setgid)
874 TEST_ENTRY (we_get_signal)
875 TEST_ENTRY (we_get_signals)
876 TEST_ENTRY (we_get_signal_one_shot)
877 TEST_ENTRY (we_get_signals_mixed)
878 TEST_ENTRY (signal_multiple_loops)
879 TEST_ENTRY (closed_fd_events)
880#endif
881
882#ifdef __APPLE__
883 TEST_ENTRY (osx_select)
884 TEST_ENTRY (osx_select_many_fds)
885#endif
886
887 TEST_ENTRY (fs_file_noent)
888 TEST_ENTRY (fs_file_nametoolong)
889 TEST_ENTRY (fs_file_loop)
890 TEST_ENTRY (fs_file_async)
891 TEST_ENTRY (fs_file_sync)
892 TEST_ENTRY (fs_file_write_null_buffer)
893 TEST_ENTRY (fs_async_dir)
894 TEST_ENTRY (fs_async_sendfile)
895 TEST_ENTRY (fs_async_sendfile_nodata)
896 TEST_ENTRY (fs_mkdtemp)
897 TEST_ENTRY (fs_fstat)
898 TEST_ENTRY (fs_access)
899 TEST_ENTRY (fs_chmod)
900 TEST_ENTRY (fs_copyfile)
901 TEST_ENTRY (fs_unlink_readonly)
902#ifdef _WIN32
903 TEST_ENTRY (fs_unlink_archive_readonly)
904#endif
905 TEST_ENTRY (fs_chown)
906 TEST_ENTRY (fs_utime)
907 TEST_ENTRY (fs_futime)
908 TEST_ENTRY (fs_readlink)
909 TEST_ENTRY (fs_realpath)
910 TEST_ENTRY (fs_symlink)
911 TEST_ENTRY (fs_symlink_dir)
912#ifdef _WIN32
913 TEST_ENTRY (fs_symlink_junction)
914 TEST_ENTRY (fs_non_symlink_reparse_point)
915#endif
916 TEST_ENTRY (fs_stat_missing_path)
917 TEST_ENTRY (fs_read_bufs)
918 TEST_ENTRY (fs_read_file_eof)
919 TEST_ENTRY (fs_file_open_append)
920 TEST_ENTRY (fs_event_watch_dir)
921 TEST_ENTRY (fs_event_watch_dir_recursive)
922#ifdef _WIN32
923 TEST_ENTRY (fs_event_watch_dir_short_path)
924#endif
925 TEST_ENTRY (fs_event_watch_file)
926 TEST_ENTRY (fs_event_watch_file_exact_path)
927 TEST_ENTRY (fs_event_watch_file_twice)
928 TEST_ENTRY (fs_event_watch_file_current_dir)
929#ifdef _WIN32
930 TEST_ENTRY (fs_event_watch_file_root_dir)
931#endif
932 TEST_ENTRY (fs_event_watch_invalid_path)
933 TEST_ENTRY (fs_event_no_callback_after_close)
934 TEST_ENTRY (fs_event_no_callback_on_close)
935 TEST_ENTRY (fs_event_immediate_close)
936 TEST_ENTRY (fs_event_close_with_pending_event)
937 TEST_ENTRY (fs_event_close_in_callback)
938 TEST_ENTRY (fs_event_start_and_close)
939 TEST_ENTRY (fs_event_error_reporting)
940 TEST_ENTRY (fs_event_getpath)
941 TEST_ENTRY (fs_scandir_empty_dir)
942 TEST_ENTRY (fs_scandir_non_existent_dir)
943 TEST_ENTRY (fs_scandir_file)
944 TEST_ENTRY (fs_open_dir)
945 TEST_ENTRY (fs_readdir_empty_dir)
946 TEST_ENTRY (fs_readdir_file)
947 TEST_ENTRY (fs_readdir_non_empty_dir)
948 TEST_ENTRY (fs_readdir_non_existing_dir)
949 TEST_ENTRY (fs_rename_to_existing_file)
950 TEST_ENTRY (fs_write_multiple_bufs)
951 TEST_ENTRY (fs_write_alotof_bufs)
952 TEST_ENTRY (fs_write_alotof_bufs_with_offset)
953 TEST_ENTRY (fs_partial_read)
954 TEST_ENTRY (fs_partial_write)
955 TEST_ENTRY (fs_read_write_null_arguments)
956 TEST_ENTRY (fs_file_pos_after_op_with_offset)
957 TEST_ENTRY (fs_null_req)
958 TEST_ENTRY (fs_read_dir)
959#ifdef _WIN32
960 TEST_ENTRY (fs_exclusive_sharing_mode)
961 TEST_ENTRY (fs_file_flag_no_buffering)
962 TEST_ENTRY (fs_open_readonly_acl)
963 TEST_ENTRY (fs_fchmod_archive_readonly)
964#endif
965 TEST_ENTRY (get_osfhandle_valid_handle)
966 TEST_ENTRY (open_osfhandle_valid_handle)
967 TEST_ENTRY (strscpy)
968 TEST_ENTRY (threadpool_queue_work_simple)
969 TEST_ENTRY (threadpool_queue_work_einval)
970 TEST_ENTRY_CUSTOM (threadpool_multiple_event_loops, 0, 0, 60000)
971 TEST_ENTRY (threadpool_cancel_getaddrinfo)
972 TEST_ENTRY (threadpool_cancel_getnameinfo)
973 TEST_ENTRY (threadpool_cancel_work)
974 TEST_ENTRY (threadpool_cancel_fs)
975 TEST_ENTRY (threadpool_cancel_single)
976 TEST_ENTRY (thread_local_storage)
977 TEST_ENTRY (thread_stack_size)
978 TEST_ENTRY (thread_stack_size_explicit)
979 TEST_ENTRY (thread_mutex)
980 TEST_ENTRY (thread_mutex_recursive)
981 TEST_ENTRY (thread_rwlock)
982 TEST_ENTRY (thread_rwlock_trylock)
983 TEST_ENTRY (thread_create)
984 TEST_ENTRY (thread_equal)
985 TEST_ENTRY (dlerror)
986 TEST_ENTRY (ip4_addr)
987 TEST_ENTRY (ip6_addr_link_local)
988
989 TEST_ENTRY (queue_foreach_delete)
990
991 TEST_ENTRY (handle_type_name)
992 TEST_ENTRY (req_type_name)
993 TEST_ENTRY (getters_setters)
994
995#ifndef _WIN32
996 TEST_ENTRY (fork_timer)
997 TEST_ENTRY (fork_socketpair)
998 TEST_ENTRY (fork_socketpair_started)
999 TEST_ENTRY (fork_signal_to_child)
1000 TEST_ENTRY (fork_signal_to_child_closed)
1001#ifndef __APPLE__
1002 TEST_ENTRY (fork_fs_events_child)
1003 TEST_ENTRY (fork_fs_events_child_dir)
1004 TEST_ENTRY (fork_fs_events_file_parent_child)
1005#endif
1006#ifndef __MVS__
1007 TEST_ENTRY (fork_threadpool_queue_work_simple)
1008#endif
1009#endif
1010
1011 TEST_ENTRY (utf8_decode1)
1012 TEST_ENTRY (uname)
1013
1014/* Doesn't work on z/OS because that platform uses EBCDIC, not ASCII. */
1015#ifndef __MVS__
1016 TEST_ENTRY (idna_toascii)
1017#endif
1018
1019#if 0
1020 /* These are for testing the test runner. */
1021 TEST_ENTRY (fail_always)
1022 TEST_ENTRY (pass_always)
1023#endif
1024TASK_LIST_END
1025