diff options
Diffstat (limited to 'lib/wx/test/wx_test_lib.hrl')
-rw-r--r-- | lib/wx/test/wx_test_lib.hrl | 110 |
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()). |