diff options
author | Lukas Larsson <[email protected]> | 2016-08-17 12:02:58 +0200 |
---|---|---|
committer | Lukas Larsson <[email protected]> | 2016-08-17 12:02:58 +0200 |
commit | 7b1cda1f97cd3ec91e7111b22aeffa3b5a6812f1 (patch) | |
tree | c494e75e3c54bc8172277df45b6c2cec31c884d5 /lib/kernel/test | |
parent | b412ea7ed2513400bcaa63581ae68219e7cce2d6 (diff) | |
parent | 71894a879d6254693791585246ce340dd7414b82 (diff) | |
download | otp-7b1cda1f97cd3ec91e7111b22aeffa3b5a6812f1.tar.gz otp-7b1cda1f97cd3ec91e7111b22aeffa3b5a6812f1.tar.bz2 otp-7b1cda1f97cd3ec91e7111b22aeffa3b5a6812f1.zip |
Merge branch 'maint-19' into maint
* maint-19:
Updated OTP version
Prepare release
erts: Make sure to flush potential exit message
Diffstat (limited to 'lib/kernel/test')
-rw-r--r-- | lib/kernel/test/os_SUITE.erl | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/lib/kernel/test/os_SUITE.erl b/lib/kernel/test/os_SUITE.erl index 8f3e511941..19ab3713a1 100644 --- a/lib/kernel/test/os_SUITE.erl +++ b/lib/kernel/test/os_SUITE.erl @@ -25,7 +25,7 @@ -export([space_in_cwd/1, quoting/1, cmd_unicode/1, space_in_name/1, bad_command/1, find_executable/1, unix_comment_in_command/1, deep_list_command/1, large_output_command/1, background_command/0, background_command/1, - perf_counter_api/1]). + message_leak/1, perf_counter_api/1]). -include_lib("common_test/include/ct.hrl"). @@ -36,7 +36,8 @@ suite() -> all() -> [space_in_cwd, quoting, cmd_unicode, space_in_name, bad_command, find_executable, unix_comment_in_command, deep_list_command, - large_output_command, background_command, perf_counter_api]. + large_output_command, background_command, message_leak, + perf_counter_api]. groups() -> []. @@ -284,6 +285,23 @@ background_command(_Config) -> %% longer then the 5 second timeout os:cmd("sleep 10&"). +%% Test that message does not leak to the calling process +message_leak(_Config) -> + process_flag(trap_exit, true), + + os:cmd("echo hello"), + [] = receive_all(), + + case os:type() of + {unix, _} -> + os:cmd("while true; do echo hello; done&"), + [] = receive_all(); + _ -> + ok % Cannot background on non-unix + end, + + process_flag(trap_exit, false). + %% Test that the os:perf_counter api works as expected perf_counter_api(_Config) -> |