aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2011-04-15 14:50:26 +0200
committerErlang/OTP <[email protected]>2011-04-15 14:50:26 +0200
commit94a980f1342af2c593c700fe429a4d54ac95e555 (patch)
tree4fab03ae97b9e4d378df0dc041381c3c8e5cf589 /lib
parentfb1eab890f6776419b3999285dff45802658e8f0 (diff)
parent7ffe6f4faf3df263e662091c0a8de729418cbb31 (diff)
downloadotp-94a980f1342af2c593c700fe429a4d54ac95e555.tar.gz
otp-94a980f1342af2c593c700fe429a4d54ac95e555.tar.bz2
otp-94a980f1342af2c593c700fe429a4d54ac95e555.zip
Merge branch 'lukas/common_test/ct_hooks_compat_maint/OTP-9200' into maint-r14
* lukas/common_test/ct_hooks_compat_maint/OTP-9200: Update framwork backwards compatability check to use TEST_SERVER_FRAMEWORK as it should and not the Module Export ct_framework:end_tc/3 for backwards compatability reasons Update end_tc framework calls to check the name of the framework module instead of the return value of the call
Diffstat (limited to 'lib')
-rw-r--r--lib/common_test/src/ct_framework.erl5
-rw-r--r--lib/test_server/src/test_server.erl19
2 files changed, 16 insertions, 8 deletions
diff --git a/lib/common_test/src/ct_framework.erl b/lib/common_test/src/ct_framework.erl
index 38a2aa53ac..3d4f674160 100644
--- a/lib/common_test/src/ct_framework.erl
+++ b/lib/common_test/src/ct_framework.erl
@@ -24,7 +24,7 @@
-module(ct_framework).
--export([init_tc/3, end_tc/4, get_suite/2, report/2, warn/1]).
+-export([init_tc/3, end_tc/3, end_tc/4, get_suite/2, report/2, warn/1]).
-export([error_notification/4]).
-export([overview_html_header/1]).
@@ -434,6 +434,9 @@ try_set_default(Name,Key,Info,Where) ->
%%%
%%% @doc Test server framework callback, called by the test_server
%%% when a test case is finished.
+end_tc(Mod, Fun, Args) ->
+ %% Have to keep end_tc/3 for backwards compatabilty issues
+ end_tc(Mod, Fun, Args, '$end_tc_dummy').
end_tc(?MODULE,error_in_suite,_, _) -> % bad start!
ok;
end_tc(Mod,Func,{TCPid,Result,[Args]}, Return) when is_pid(TCPid) ->
diff --git a/lib/test_server/src/test_server.erl b/lib/test_server/src/test_server.erl
index 7f0011bd68..8fe7d72270 100644
--- a/lib/test_server/src/test_server.erl
+++ b/lib/test_server/src/test_server.erl
@@ -1193,11 +1193,10 @@ run_test_case_eval1(Mod, Func, Args, Name, RunInit, TCCallback) ->
do_end_tc_call(M,F,Res,Return) ->
Ref = make_ref(),
- case test_server_sup:framework_call(
- end_tc, [?pl2a(M),F,Res], Ref) of
- {fail,FWReason} ->
- {failed,FWReason};
- Ref ->
+ case os:getenv("TEST_SERVER_FRAMEWORK") of
+ FW when FW == "ct_framework";
+ FW == "undefined";
+ FW == false ->
case test_server_sup:framework_call(
end_tc, [?pl2a(M),F,Res, Return], ok) of
{fail,FWReason} ->
@@ -1212,8 +1211,14 @@ do_end_tc_call(M,F,Res,Return) ->
NewReturn ->
NewReturn
end;
- _ ->
- Return
+ Other ->
+ case test_server_sup:framework_call(
+ end_tc, [Other,F,Res], Ref) of
+ {fail,FWReason} ->
+ {failed,FWReason};
+ _Else ->
+ Return
+ end
end.
%% the return value is a list and we have to check if it contains