diff options
author | Sverker Eriksson <[email protected]> | 2012-01-11 19:02:12 +0100 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2012-01-11 19:02:12 +0100 |
commit | c823c58b1fa1b2d4903e1b16fda7e669b641c04f (patch) | |
tree | 00c97e689239a0fd3287aff19097ab5337cda467 /lib/stdlib/test | |
parent | af99d9a501ede4af09517f27dde2897577aaba4a (diff) | |
parent | 5d7dccfd4553aa03d22e71dc69e40e4debe2b96d (diff) | |
download | otp-c823c58b1fa1b2d4903e1b16fda7e669b641c04f.tar.gz otp-c823c58b1fa1b2d4903e1b16fda7e669b641c04f.tar.bz2 otp-c823c58b1fa1b2d4903e1b16fda7e669b641c04f.zip |
Merge branch 'sverk/wait_for_test_procs' into maint
* sverk/wait_for_test_procs:
stdlib: Enable unused 'end_per_testcase' in ets_SUITE
Diffstat (limited to 'lib/stdlib/test')
-rw-r--r-- | lib/stdlib/test/ets_SUITE.erl | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/stdlib/test/ets_SUITE.erl b/lib/stdlib/test/ets_SUITE.erl index 0e8849b5b3..101828fdef 100644 --- a/lib/stdlib/test/ets_SUITE.erl +++ b/lib/stdlib/test/ets_SUITE.erl @@ -74,7 +74,7 @@ -export([bad_table/1, types/1]). -export([otp_9423/1]). --export([init_per_testcase/2]). +-export([init_per_testcase/2, end_per_testcase/2]). %% Convenience for manual testing -export([random_test/0]). @@ -2385,6 +2385,8 @@ setopts_do(Opts) -> ?line {'EXIT',{badarg,_}} = (catch ets:setopts(T,{protection,private,false})), ?line {'EXIT',{badarg,_}} = (catch ets:setopts(T,protection)), ?line ets:delete(T), + unlink(Heir), + exit(Heir, bang), ok. bad_table(doc) -> ["All kinds of operations with bad table argument"]; @@ -5645,7 +5647,8 @@ spawn_logger(Procs) -> true -> exit(Proc, kill); _ -> ok end, - erlang:display(process_info(Proc)), + erlang:display({"Waiting for 'DOWN' from", Proc, + process_info(Proc), pid_status(Proc)}), receive {'DOWN', Mon, _, _, _} -> ok @@ -5656,6 +5659,15 @@ spawn_logger(Procs) -> spawn_logger([From]) end. +pid_status(Pid) -> + try + erts_debug:get_internal_state({process_status, Pid}) + catch + error:undef -> + erts_debug:set_internal_state(available_internal_state, true), + pid_status(Pid) + end. + start_spawn_logger() -> case whereis(ets_test_spawn_logger) of Pid when is_pid(Pid) -> true; |