aboutsummaryrefslogtreecommitdiffstats
path: root/lib/wx/test/wx_test_lib.hrl
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
committerErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
commit84adefa331c4159d432d22840663c38f155cd4c1 (patch)
treebff9a9c66adda4df2106dfd0e5c053ab182a12bd /lib/wx/test/wx_test_lib.hrl
downloadotp-84adefa331c4159d432d22840663c38f155cd4c1.tar.gz
otp-84adefa331c4159d432d22840663c38f155cd4c1.tar.bz2
otp-84adefa331c4159d432d22840663c38f155cd4c1.zip
The R13B03 release.OTP_R13B03
Diffstat (limited to 'lib/wx/test/wx_test_lib.hrl')
-rw-r--r--lib/wx/test/wx_test_lib.hrl110
1 files changed, 110 insertions, 0 deletions
diff --git a/lib/wx/test/wx_test_lib.hrl b/lib/wx/test/wx_test_lib.hrl
new file mode 100644
index 0000000000..34e1e9c6b8
--- /dev/null
+++ b/lib/wx/test/wx_test_lib.hrl
@@ -0,0 +1,110 @@
+%%
+%% %CopyrightBegin%
+%%
+%% Copyright Ericsson AB 2008-2009. 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
+%% compliance with the License. You should have received a copy of the
+%% Erlang Public License along with this software. If not, it can be
+%% retrieved online at http://www.erlang.org/.
+%%
+%% Software distributed under the License is distributed on an "AS IS"
+%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+%% the License for the specific language governing rights and limitations
+%% under the License.
+%%
+%% %CopyrightEnd%
+%%%-------------------------------------------------------------------
+%%% File : wx_test_lib.hrl
+%%% Author : Dan Gudmundsson <[email protected]>
+%%% Description : Testing Macros
+%%%
+%%% Created : 30 Oct 2008 by Dan Gudmundsson <[email protected]>
+%%%-------------------------------------------------------------------
+
+-include_lib("wx/include/wx.hrl").
+
+-define(log(Format,Args),wx_test_lib:log(Format,Args,?FILE,?LINE)).
+-define(warning(Format,Args),?log("<WARNING>~n " ++ Format,Args)).
+-define(error(Format,Args), wx_test_lib:error(Format,Args,?FILE,?LINE)).
+-define(verbose(Format,Args),wx_test_lib:verbose(Format,Args,?FILE,?LINE)).
+
+-define(fatal(Format,Args),
+ ?error(Format, Args),
+ exit({test_case_fatal, Format, Args, ?FILE, ?LINE})).
+
+-define(skip(Format,Args),
+ ?warning(Format, Args),
+ exit({skipped, ?flat_format(Format, Args)})).
+
+-define(m(ExpectedRes, Expr),
+ fun() ->
+ {TeStFILe, TeSTLiNe} = {?FILE, ?LINE},
+ AcTuAlReS = (catch (Expr)),
+ case AcTuAlReS of
+ ExpectedRes ->
+ ?verbose("ok: ~p~n",[AcTuAlReS]),
+ AcTuAlReS;
+ _ ->
+ wx_test_lib:error("Not Matching Actual result was:~n ~p ~n Expected ~s~n",
+ [AcTuAlReS, ??ExpectedRes],
+ TeStFILe,TeSTLiNe),
+ AcTuAlReS
+ end
+ end()).
+
+-define(mt(Expected, Expr),
+ fun() ->
+ {TeStFILe, TeSTLiNe} = {?FILE, ?LINE},
+ AcTuAlReS = (catch (Expr)),
+ case catch element(3,AcTuAlReS) of
+ Expected ->
+ wx_test_lib:verbose("ok: ~s~n",[??Expected],TeStFILe,TeSTLiNe),
+ AcTuAlReS;
+ _ ->
+ wx_test_lib:error("Not Matching Actual result was:~n ~p ~n Expected ~s~n",
+ [AcTuAlReS, ??Expected],
+ TeStFILe,TeSTLiNe),
+ AcTuAlReS
+ end
+ end()).
+
+-define(mr(Expected, Expr),
+ fun() ->
+ {TeStFILe, TeSTLiNe} = {?FILE, ?LINE},
+ AcTuAlReS = (catch (Expr)),
+ case catch element(1,AcTuAlReS) of
+ Expected ->
+ wx_test_lib:verbose("ok: ~s~n",[??Expected],TeStFILe,TeSTLiNe),
+ AcTuAlReS;
+ _ ->
+ wx_test_lib:error("Not Matching Actual result was:~n ~p ~n Expected ~s~n",
+ [AcTuAlReS, ??Expected],
+ TeStFILe,TeSTLiNe),
+ AcTuAlReS
+ end
+ end()).
+
+-define(m_receive(ExpectedMsg),
+ ?m(ExpectedMsg,wx_test_lib:pick_msg())).
+
+-define(m_multi_receive(ExpectedMsgs),
+ fun() ->
+ {TeStFILe, TeSTLiNe} = {?FILE, ?LINE},
+ TmPeXpCtEdMsGs = lists:sort(ExpectedMsgs),
+ AcTuAlReS =
+ lists:sort(lists:map(fun(_) ->
+ wx_test_lib:pick_msg()
+ end, TmPeXpCtEdMsGs)),
+ case AcTuAlReS of
+ TmPeXpCtEdMsGs ->
+ ?verbose("ok: ~p~n",[AcTuAlReS]),
+ AcTuAlReS;
+ _ ->
+ wx_test_lib:error("Not Matching Actual result was:~n ~p ~n Expected ~p~n",
+ [AcTuAlReS, ExpectedMsgs],
+ TeStFILe,TeSTLiNe),
+ AcTuAlReS
+ end
+ end()).