summaryrefslogtreecommitdiff
path: root/test/rebar_test_utils.erl
diff options
context:
space:
mode:
authorFred Hebert <mononcqc@ferd.ca>2015-03-24 22:16:55 -0700
committerFred Hebert <mononcqc@ferd.ca>2015-03-24 22:16:55 -0700
commitab53164afbebada296c74dba0870d372e63c3f53 (patch)
tree802add27d843e4d0e4a2a965192ed52fb378fc3d /test/rebar_test_utils.erl
parentdeebd23a88e1c89647c864846dfc6a69df02b045 (diff)
parentefb859f15acad73cfe2f0510a3d9bcd7958c649f (diff)
Merge pull request #296 from talentdeficit/eunit_test_suite
eunit refactor and test suite
Diffstat (limited to 'test/rebar_test_utils.erl')
-rw-r--r--test/rebar_test_utils.erl30
1 files changed, 25 insertions, 5 deletions
diff --git a/test/rebar_test_utils.erl b/test/rebar_test_utils.erl
index 7d57e0d..2eb14ac 100644
--- a/test/rebar_test_utils.erl
+++ b/test/rebar_test_utils.erl
@@ -3,7 +3,7 @@
-include_lib("eunit/include/eunit.hrl").
-export([init_rebar_state/1, init_rebar_state/2, run_and_check/4]).
-export([expand_deps/2, flat_deps/1, flat_pkgdeps/1, top_level_deps/1]).
--export([create_app/4, create_empty_app/4, create_config/2]).
+-export([create_app/4, create_eunit_app/4, create_empty_app/4, create_config/2]).
-export([create_random_name/1, create_random_vsn/0]).
%%%%%%%%%%%%%%
@@ -70,7 +70,17 @@ run_and_check(Config, RebarConfig, Command, Expect) ->
%% And returns a `rebar_app_info' object.
create_app(AppDir, Name, Vsn, Deps) ->
write_src_file(AppDir, Name),
- write_test_file(AppDir, Name),
+ write_app_src_file(AppDir, Name, Vsn, Deps),
+ rebar_app_info:new(Name, Vsn, AppDir, Deps).
+
+%% @doc Creates a dummy application including:
+%% - src/<file>.erl
+%% - src/<file>.app.src
+%% - test/<file>_tests.erl
+%% And returns a `rebar_app_info' object.
+create_eunit_app(AppDir, Name, Vsn, Deps) ->
+ write_eunitized_src_file(AppDir, Name),
+ write_eunit_suite_file(AppDir, Name),
write_app_src_file(AppDir, Name, Vsn, Deps),
rebar_app_info:new(Name, Vsn, AppDir, Deps).
@@ -260,10 +270,15 @@ write_src_file(Dir, Name) ->
ok = filelib:ensure_dir(Erl),
ok = ec_file:write(Erl, erl_src_file("not_a_real_src_" ++ Name ++ ".erl")).
-write_test_file(Dir, Name) ->
+write_eunitized_src_file(Dir, Name) ->
+ Erl = filename:join([Dir, "src", "not_a_real_src_" ++ Name ++ ".erl"]),
+ ok = filelib:ensure_dir(Erl),
+ ok = ec_file:write(Erl, erl_eunitized_src_file("not_a_real_src_" ++ Name ++ ".erl")).
+
+write_eunit_suite_file(Dir, Name) ->
Erl = filename:join([Dir, "test", "not_a_real_src_" ++ Name ++ "_tests.erl"]),
ok = filelib:ensure_dir(Erl),
- ok = ec_file:write(Erl, erl_test_file("not_a_real_src_" ++ Name ++ ".erl")).
+ ok = ec_file:write(Erl, erl_eunit_suite_file("not_a_real_src_" ++ Name ++ ".erl")).
write_app_file(Dir, Name, Version, Deps) ->
Filename = filename:join([Dir, "ebin", Name ++ ".app"]),
@@ -278,13 +293,18 @@ write_app_src_file(Dir, Name, Version, Deps) ->
erl_src_file(Name) ->
io_lib:format("-module(~s).\n"
"-export([main/0]).\n"
+ "main() -> ok.\n", [filename:basename(Name, ".erl")]).
+
+erl_eunitized_src_file(Name) ->
+ io_lib:format("-module(~s).\n"
+ "-export([main/0]).\n"
"main() -> ok.\n"
"-ifdef(TEST).\n"
"-include_lib(\"eunit/include/eunit.hrl\").\n"
"some_test_() -> ?_assertEqual(ok, main()).\n"
"-endif.\n", [filename:basename(Name, ".erl")]).
-erl_test_file(Name) ->
+erl_eunit_suite_file(Name) ->
BaseName = filename:basename(Name, ".erl"),
io_lib:format("-module(~s_tests).\n"
"-compile(export_all).\n"