summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoralisdair sullivan <alisdairsullivan@yahoo.ca>2016-03-02 23:58:58 -0800
committeralisdair sullivan <alisdairsullivan@yahoo.ca>2016-03-03 00:15:35 -0800
commit4c32c52b557c66ac6e6764efb1ed9135c00a3c20 (patch)
tree4d7db9889f517bcd99d628dcb7a10889d756e5d8 /src
parente389238d8abffb2f345c715a3c4d29622114cad3 (diff)
define the 'EUNIT' macro in the test profile
Diffstat (limited to 'src')
-rw-r--r--src/rebar3.erl21
1 files changed, 11 insertions, 10 deletions
diff --git a/src/rebar3.erl b/src/rebar3.erl
index c1a1ae4..ab7d35a 100644
--- a/src/rebar3.erl
+++ b/src/rebar3.erl
@@ -337,18 +337,19 @@ state_from_global_config(Config, GlobalConfigFile) ->
test_state(State) ->
ErlOpts = rebar_state:get(State, erl_opts, []),
- TestOpts = safe_define_test_macro(ErlOpts),
- [{extra_src_dirs, ["test"]}, {erl_opts, TestOpts}].
+ TestOpts = safe_define_test_macro(ErlOpts, 'TEST'),
+ MoreTestOpts = safe_define_test_macro(ErlOpts, 'EUNIT'),
+ [{extra_src_dirs, ["test"]}, {erl_opts, TestOpts ++ MoreTestOpts}].
-safe_define_test_macro(Opts) ->
+safe_define_test_macro(Opts, Macro) ->
%% defining a compile macro twice results in an exception so
- %% make sure 'TEST' is only defined once
- case test_defined(Opts) of
+ %% make sure 'TEST' or 'EUNIT' is only defined once
+ case test_defined(Opts, Macro) of
true -> [];
- false -> [{d, 'TEST'}]
+ false -> [{d, Macro}]
end.
-test_defined([{d, 'TEST'}|_]) -> true;
-test_defined([{d, 'TEST', true}|_]) -> true;
-test_defined([_|Rest]) -> test_defined(Rest);
-test_defined([]) -> false.
+test_defined([{d, Macro}|_], Macro) -> true;
+test_defined([{d, Macro, true}|_], Macro) -> true;
+test_defined([_|Rest], Macro) -> test_defined(Rest, Macro);
+test_defined([], _) -> false.