diff options
author | Siri Hansen <[email protected]> | 2012-03-21 19:10:49 +0100 |
---|---|---|
committer | Siri Hansen <[email protected]> | 2012-03-21 19:11:15 +0100 |
commit | 33e42a694e0ddd8a6c02bfe6c04298ca95aa938a (patch) | |
tree | 5c416c25321d3b6372ca2be871aead7fb234e5cd /lib/reltool/test/reltool_wx_SUITE.erl | |
parent | 22d5fe18a285784fe724d5f1ce62578bd7ff4f1a (diff) | |
parent | e855e8326a6ce589991da9cafc2590f306d035c3 (diff) | |
download | otp-33e42a694e0ddd8a6c02bfe6c04298ca95aa938a.tar.gz otp-33e42a694e0ddd8a6c02bfe6c04298ca95aa938a.tar.bz2 otp-33e42a694e0ddd8a6c02bfe6c04298ca95aa938a.zip |
Merge branch 'siri/reltool/fresh-up' into maint
OTP-9792
OTP-9794
OTP-9967
OTP-9968
OTP-9980
OTP-9984
* siri/reltool/fresh-up: (27 commits)
[reltool] Improve title of dependency colum
[reltool] Update status bar for all config changes and for generate target
[reltool] Fix GUI problems on Windows
[reltool] Remove skip statement for test that failed due to stdlib error
[sasl] Sort applications used by other applications correctly in .script
[sasl] Doc that included applications in .rel defaults to same as in .app
[reltool] Fix problems with sorting of applications
[reltool] Just warn if same module occurs twice in .app file
[reltool] Always return warnings as flat strings
[reltool] Fix type spec and doc for app() and mod()
[reltool] Move tables out of common record
[reltool] Display warnings continously in GUI
[reltool] Cleanup test code
[reltool] Unset ERL_FLAGS when running escript from reltool_server_SUITE
[reltool] Improve error handling
[reltool] Fix rollback and undo
[reltool] Link together escript with inlined application
[reltool] Fix badmatch when starting GUI
[reltool] Update state and tables consistently for all types of config changes
[reltool] Add test cases for handling of escripts
...
Diffstat (limited to 'lib/reltool/test/reltool_wx_SUITE.erl')
-rw-r--r-- | lib/reltool/test/reltool_wx_SUITE.erl | 43 |
1 files changed, 40 insertions, 3 deletions
diff --git a/lib/reltool/test/reltool_wx_SUITE.erl b/lib/reltool/test/reltool_wx_SUITE.erl index 424bc7d189..13d71f4fd6 100644 --- a/lib/reltool/test/reltool_wx_SUITE.erl +++ b/lib/reltool/test/reltool_wx_SUITE.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2009-2011. All Rights Reserved. +%% Copyright Ericsson AB 2009-2012. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -61,9 +61,46 @@ start_all_windows(TestInfo) when is_atom(TestInfo) -> reltool_test_lib:tc_info(TestInfo); start_all_windows(_Config) -> {ok, SysPid} = ?msym({ok, _}, reltool:start([{trap_exit, false}])), + erlang:monitor(process,SysPid), {ok, AppPid} = ?msym({ok, _}, reltool_sys_win:open_app(SysPid, stdlib)), - ?msym({ok, _}, reltool_app_win:open_mod(AppPid, escript)), + erlang:monitor(process,AppPid), + {ok, ModPid} = ?msym({ok, _}, reltool_app_win:open_mod(AppPid, escript)), + erlang:monitor(process,ModPid), + + %% Let all windows get started timer:sleep(timer:seconds(10)), + + %% Test that server pid can be fetched, and that server is alive + {ok, Server} = ?msym({ok,_}, reltool:get_server(SysPid)), + ?m(true, erlang:is_process_alive(Server)), + ?m({ok,{sys,[]}}, reltool:get_config(Server)), + + %% Terminate + check_no_win_crash(), ?m(ok, reltool:stop(SysPid)), - + wait_terminate([{sys,SysPid},{app,AppPid},{mod,ModPid}]), + ok. + + +%%%----------------------------------------------------------------- +%%% Internal functions +check_no_win_crash() -> + receive {'DOWN',_,_,_,_} = Down -> + ct:log("Unexpected termination of window:~n~p",[Down]), + ct:fail("window crashed") + after 0 -> + ok + end. + +wait_terminate([]) -> + ok; +wait_terminate([{Win,P}|Rest]) -> + receive + {'DOWN',_,process,P,shutdown} -> + wait_terminate(Rest); + {'DOWN',_,process,P,Reason} -> + ct:log("~p window terminated with unexpected reason:~n~p", + [Win,Reason]), + ct:fail("unexpected exit reason from window") + end. |