summaryrefslogtreecommitdiff
path: root/inttest/ct4/ct4_rt.erl
diff options
context:
space:
mode:
Diffstat (limited to 'inttest/ct4/ct4_rt.erl')
-rw-r--r--inttest/ct4/ct4_rt.erl44
1 files changed, 44 insertions, 0 deletions
diff --git a/inttest/ct4/ct4_rt.erl b/inttest/ct4/ct4_rt.erl
new file mode 100644
index 0000000..bc010e8
--- /dev/null
+++ b/inttest/ct4/ct4_rt.erl
@@ -0,0 +1,44 @@
+%% -*- erlang-indent-level: 4;indent-tabs-mode: nil -*-
+%% ex: ts=4 sw=4 et
+-module(ct4_rt).
+
+-compile(export_all).
+
+setup([Target]) ->
+ retest_utils:load_module(filename:join(Target, "inttest_utils.erl")),
+ ok.
+
+files() ->
+ [
+ {create, "ebin/foo.app", app(foo)},
+ {copy, "rebar.config", "rebar.config"},
+ {copy, "foo.test.spec", "test/foo.test.spec"},
+ {copy, "deps/bar.test.spec", "deps/bar.test.spec"},
+ {copy, "deps/bar.test.spec", "baz.test.spec"},
+ {copy, "foo_SUITE.erl", "test/foo_SUITE.erl"}
+ ] ++ inttest_utils:rebar_setup().
+
+run(_Dir) ->
+ Ref = retest:sh("./rebar compile ct -vvv", [async]),
+ {ok, [[CTRunCmd]]} = retest:sh_expect(Ref, "^\"ct_run.*",
+ [global, {capture, first, binary}]),
+ {match, _} = re:run(CTRunCmd, "foo.test.spec", [global]),
+ %% deps/bar.test.spec should be ignored by rebar_ct:collect_glob/3
+ nomatch = re:run(CTRunCmd, "bar.test.spec", [global]),
+ %% baz.test.spec should be also ignored by rebar_ct:collect_glob/3
+ %% since we specified in rebar.config that we want to search for
+ %% ct specs from the test dir
+ nomatch = re:run(CTRunCmd, "baz.test.spec", [global]),
+ ok.
+
+%%
+%% Generate the contents of a simple .app file
+%%
+app(Name) ->
+ App = {application, Name,
+ [{description, atom_to_list(Name)},
+ {vsn, "1"},
+ {modules, []},
+ {registered, []},
+ {applications, [kernel, stdlib]}]},
+ io_lib:format("~p.\n", [App]).