R version 4.6.0 RC (2026-04-21 r89932 ucrt) -- "Because it was There" Copyright (C) 2026 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > # This file is part of the standard setup for testthat. > # It is recommended that you do not modify it. > # > # Where should you do additional test configuration? > # Learn more about the roles of various files in: > # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview > # * https://testthat.r-lib.org/articles/special-files.html > > library(testthat) > library(processx) > > test_check("processx", reporter = "summary") assertions: ...................S....................S...........S........................S........................S.......................S...S chr-io: ........... cleanup: .. client-lib: ............................................................ connections: .................. env: .... err-output: SSSSSSS errors: ..........S extra-connections: SSS fifo: SSSS io: S.................S...SSS kill-tree: SSSSSSS pipeline: SSSSSSSSSSSSSS poll-connections: ......... poll-curl: SSS poll-stress: S poll: ................ poll2: ............S.................................................. poll3: ......... print: ..S process: ..S....S.SSSS......... ps-methods: .............. pty: SSSSSS run: .................................................................S....S...........SSSSSSSSSS set-std: ............................ sigchld: SSSSSSSS standalone-errors: ..................................................................................S......SSSS..SS stdin: SSSSSS stress: SSS unix-sockets: SSSSSSSSSS utf8: SSSSS utils: S................SSS.......S................................ wait: S.......S ══ Skipped ═════════════════════════════════════════════════════════════════════ 1. is_string ('test-assertions.R:12:1') - Reason: On CRAN 2. is_string_or_null ('test-assertions.R:24:1') - Reason: On CRAN 3. is_flag ('test-assertions.R:51:1') - Reason: On CRAN 4. is_integerish_scalar ('test-assertions.R:75:1') - Reason: On CRAN 5. is_pid ('test-assertions.R:87:1') - Reason: On CRAN 6. is_flag_or_string ('test-assertions.R:99:1') - Reason: On CRAN 7. is_existing_file ('test-assertions.R:111:1') - Reason: On CRAN 8. simple error ('test-err-output.R:1:1') - Reason: On CRAN 9. simple error with cli ('test-err-output.R:16:1') - Reason: On CRAN 10. simple error with cli and colors ('test-err-output.R:33:1') - Reason: On CRAN 11. chain_error ('test-err-output.R:53:1') - Reason: On CRAN 12. chain_error with stop() ('test-err-output.R:115:1') - Reason: On CRAN 13. chain_error with rlang::abort() ('test-err-output.R:149:1') - Reason: On CRAN 14. full parent error is printed in non-interactive mode ('test-err-output.R:184:1') - Reason: On CRAN 15. output from error ('test-errors.R:70:1') - Reason: On CRAN 16. writing to extra connection ('test-extra-connections.R:2:3') - Reason: On CRAN 17. reading from extra connection ('test-extra-connections.R:29:3') - Reason: On CRAN 18. reading and writing to extra connection ('test-extra-connections.R:69:3') - Reason: On CRAN 19. read end first ('test-fifo.R:2:3') - Reason: On CRAN 20. write end first ('test-fifo.R:52:3') - Reason: On CRAN 21. write end first 2 ('test-fifo.R:101:3') - Reason: On CRAN 22. errors ('test-fifo.R:137:3') - Reason: On CRAN 23. Output and error are discarded by default ('test-io.R:2:3') - Reason: no srcrefs 24. readChar on IO, unix ('test-io.R:175:3') - Reason: only run it on unix 25. same pipe ('test-io.R:207:3') - Reason: no srcrefs 26. same file ('test-io.R:221:3') - Reason: no srcrefs 27. same NULL, for completeness ('test-io.R:237:3') - Reason: no srcrefs 28. tree ids are inherited ('test-kill-tree.R:2:3') - Reason: On CRAN 29. tree ids are inherited if env is specified ('test-kill-tree.R:37:3') - Reason: On CRAN 30. kill_tree ('test-kill-tree.R:74:3') - Reason: On CRAN 31. kill_tree with children ('test-kill-tree.R:94:3') - Reason: On CRAN 32. kill_tree and orphaned children ('test-kill-tree.R:134:3') - Reason: On CRAN 33. cleanup_tree option ('test-kill-tree.R:187:3') - Reason: On CRAN 34. cleanup_tree stress test ('test-kill-tree.R:209:3') - Reason: On CRAN 35. 2-process pipeline: sort | uniq ('test-pipeline.R:2:3') - Reason: On CRAN 36. 3-process pipeline: cat | sort | uniq ('test-pipeline.R:22:3') - Reason: On CRAN 37. single-process pipeline is equivalent to process$new() ('test-pipeline.R:42:3') - Reason: On CRAN 38. pipeline is_alive() and get_pids() ('test-pipeline.R:55:3') - Reason: On CRAN 39. pipeline get_processes() returns process objects ('test-pipeline.R:76:3') - Reason: On CRAN 40. pipeline kill() stops all processes ('test-pipeline.R:95:3') - Reason: On CRAN 41. pipeline stdout to file ('test-pipeline.R:111:3') - Reason: On CRAN 42. conn_create_proc_pipepair() returns write/read ends ('test-pipeline.R:133:3') - Reason: On CRAN 43. px single-process pipeline ('test-pipeline.R:147:3') - Reason: On CRAN 44. px 2-process pipeline: passthrough ('test-pipeline.R:160:3') - Reason: On CRAN 45. px 3-process pipeline: passthrough ('test-pipeline.R:180:3') - Reason: On CRAN 46. px pipeline is_alive() and get_pids() ('test-pipeline.R:204:3') - Reason: On CRAN 47. px pipeline kill() stops all processes ('test-pipeline.R:225:3') - Reason: On CRAN 48. px pipeline stdout to file ('test-pipeline.R:241:3') - Reason: On CRAN 49. curl fds ('test-poll-curl.R:2:3') - Reason: On CRAN 50. curl fds before others ('test-poll-curl.R:61:3') - Reason: On CRAN 51. process fd before curl fd ('test-poll-curl.R:93:3') - Reason: On CRAN 52. many processes ('test-poll-stress.R:2:3') - Reason: On CRAN 53. polling and buffering ('test-poll2.R:106:3') - Reason: On Windows 54. pipeline print ('test-print.R:18:3') - Reason: On CRAN 55. non existing process ('test-process.R:17:3') - Reason: no srcrefs 56. post processing ('test-process.R:29:1') - Reason: On CRAN 57. working directory does not exist ('test-process.R:77:3') - Reason: no srcrefs 58. R process is installed with a SIGTERM cleanup handler ('test-process.R:94:3') - Reason: On Windows 59. linux_pdeathsig kills child when parent exits ('test-process.R:136:3') - Reason: !is_linux() is TRUE 60. without linux_pdeathsig child survives parent exit ('test-process.R:184:3') - Reason: !is_linux() is TRUE 61. pty works on windows ('test-pty.R:3:3') - Reason: On CRAN 62. pty write_input works on windows ('test-pty.R:25:3') - Reason: On CRAN 63. pty works ('test-pty.R:53:3') - Reason: only run it on unix 64. pty echo ('test-pty.R:77:3') - Reason: only run it on unix 65. pty captures output from a short-lived process ('test-pty.R:109:3') - Reason: only run it on unix 66. read_output_lines() fails for pty ('test-pty.R:126:3') - Reason: no srcrefs 67. working directory does not exist ('test-run.R:78:3') - Reason: no srcrefs 68. condition on interrupt ('test-run.R:109:3') - Reason: On CRAN 69. binary=TRUE captures stdout as raw vector ('test-run.R:180:3') - Reason: On CRAN 70. binary=TRUE captures stderr as raw vector ('test-run.R:194:3') - Reason: On CRAN 71. binary=TRUE with stdout_callback receives raw chunks ('test-run.R:212:3') - Reason: On CRAN 72. binary=TRUE errors with line callbacks ('test-run.R:232:3') - Reason: no srcrefs 73. pty=TRUE collects merged output in stdout ('test-run.R:255:3') - Reason: only run it on unix 74. pty=TRUE collects merged output in stdout (windows) ('test-run.R:266:3') - Reason: On CRAN 75. pty=TRUE works with stdout_callback ('test-run.R:275:3') - Reason: only run it on unix 76. pty=TRUE works with stdout_callback (windows) ('test-run.R:292:3') - Reason: On CRAN 77. pty=TRUE errors on incompatible arguments ('test-run.R:307:3') - Reason: no srcrefs 78. pty=TRUE with file stdin feeds content to the process ('test-run.R:327:3') - Reason: only run it on unix 79. is_alive() ('test-sigchld.R:2:3') - Reason: only run it on unix 80. finalizer ('test-sigchld.R:30:3') - Reason: only run it on unix 81. get_exit_status ('test-sigchld.R:63:3') - Reason: only run it on unix 82. signal ('test-sigchld.R:89:3') - Reason: only run it on unix 83. kill ('test-sigchld.R:122:3') - Reason: only run it on unix 84. SIGCHLD handler ('test-sigchld.R:152:3') - Reason: only run it on unix 85. Notify old signal handler ('test-sigchld.R:189:3') - Reason: On CRAN 86. it is ok if parallel has no active cluster ('test-sigchld.R:227:3') - Reason: On CRAN 87. un-caught condition has trace ('test-standalone-errors.R:91:3') - Reason: On CRAN 88. error trace from subprocess ('test-standalone-errors.R:150:3') - Reason: On CRAN 89. error trace from throw() in subprocess ('test-standalone-errors.R:184:3') - Reason: On CRAN 90. trace is not overwritten ('test-standalone-errors.R:218:3') - Reason: On CRAN 91. error is printed on error ('test-standalone-errors.R:228:3') - Reason: On CRAN 92. can pass frame as error call in `new_error()` ('test-standalone-errors.R:287:1') - Reason: On CRAN 93. can pass frame as error call in `throw()` ('test-standalone-errors.R:303:1') - Reason: On CRAN 94. stdin ('test-stdin.R:2:3') - Reason: On CRAN 95. stdin & stdout ('test-stdin.R:23:3') - Reason: On CRAN 96. stdin buffer full ('test-stdin.R:44:3') - Reason: On CRAN 97. file as stdin ('test-stdin.R:59:3') - Reason: On CRAN 98. large file as stdin ('test-stdin.R:77:3') - Reason: On CRAN 99. writing raw ('test-stdin.R:95:3') - Reason: On CRAN 100. can start 100 processes quickly ('test-stress.R:2:3') - Reason: On CRAN 101. run() a lot of times, with small timeouts ('test-stress.R:14:3') - Reason: On CRAN 102. run() and kill while polling ('test-stress.R:29:3') - Reason: On CRAN 103. CRUD ('test-unix-sockets.R:2:3') - Reason: On CRAN 104. client can read / write before accept ('test-unix-sockets.R:70:3') - Reason: On CRAN 105. poll returns connect ('test-unix-sockets.R:93:3') - Reason: On CRAN 106. poll returns connect even if pipes are connected ('test-unix-sockets.R:111:3') - Reason: On CRAN 107. reading unaccepted server socket is error ('test-unix-sockets.R:129:3') - Reason: On CRAN 108. writing unaccepted server socket is error ('test-unix-sockets.R:158:3') - Reason: On CRAN 109. here is no extra ready for poll(), without data ('test-unix-sockets.R:185:3') - Reason: On CRAN 110. closing the other end finishes `poll()`, on macOS ('test-unix-sockets.R:211:3') - Reason: On CRAN 111. errors ('test-unix-sockets.R:257:3') - Reason: On CRAN 112. unix-sockets.h ('test-unix-sockets.R:288:3') - Reason: On CRAN 113. UTF-8 executable name ('test-utf8.R:2:3') - Reason: On CRAN 114. UTF-8 directory name ('test-utf8.R:17:3') - Reason: On CRAN 115. native program name is converted to UTF-8 ('test-utf8.R:45:5') - Reason: Needs latin1 locale 116. UTF-8 in stdout ('test-utf8.R:57:3') - Reason: On CRAN 117. UTF-8 in stderr ('test-utf8.R:65:3') - Reason: On CRAN 118. full_path gives correct values ('test-utils.R:2:3') - Reason: On CRAN 119. full_path gives correct values, windows ('test-utils.R:42:1') - Reason: On CRAN 120. full_path gives correct values, unix ('test-utils.R:76:3') - Reason: only run it on unix 121. do_echo_cmd ('test-utils.R:84:3') - Reason: only run it on unix 122. write_raw_stdout writes bytes without text translation ('test-utils.R:114:3') - Reason: On CRAN 123. no deadlock when no stdout + wait ('test-wait.R:2:3') - Reason: failure would freeze 124. no fd leak on unix ('test-wait.R:46:3') - Reason: On CRAN ══ DONE ════════════════════════════════════════════════════════════════════════ > > proc.time() user system elapsed 19.92 3.32 61.09