summaryrefslogtreecommitdiff
path: root/src/rebar_prv_test_deps.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/rebar_prv_test_deps.erl')
-rw-r--r--src/rebar_prv_test_deps.erl27
1 files changed, 13 insertions, 14 deletions
diff --git a/src/rebar_prv_test_deps.erl b/src/rebar_prv_test_deps.erl
index 081b210..a51f635 100644
--- a/src/rebar_prv_test_deps.erl
+++ b/src/rebar_prv_test_deps.erl
@@ -9,7 +9,9 @@
-include("rebar.hrl").
-define(PROVIDER, test_deps).
--define(DEPS, [install_deps]).
+-define(DEPS, []).
+
+-define(DEFAULT_TEST_DEPS_DIR, "_tdeps").
%% ===================================================================
%% Public API
@@ -17,13 +19,11 @@
-spec init(rebar_state:t()) -> {ok, rebar_state:t()}.
init(State) ->
- Providers = rebar_state:providers(State),
- CompileProvider = providers:get_provider(compile, Providers),
State1 = rebar_state:add_provider(State, providers:create([{name, ?PROVIDER},
{module, ?MODULE},
{bare, true},
{deps, ?DEPS},
- {hooks, {[], [CompileProvider]}},
+ {hooks, {[], []}},
{example, undefined},
{short_desc, "Install dependencies needed only for testing."},
{desc, ""},
@@ -37,19 +37,18 @@ do(State) ->
Names = [ec_cnv:to_binary(element(1, Dep)) || Dep <- TestDeps],
ProjectApps1 = [rebar_app_info:deps(A, Names) || A <- ProjectApps],
- {ok, State1} = rebar_prv_install_deps:handle_deps(State, TestDeps),
- AllDeps = rebar_state:get(State1, all_deps, []),
+ TestDepsDir = rebar_state:get(State, test_deps_dir, ?DEFAULT_TEST_DEPS_DIR),
+ DepsDir = rebar_state:get(State, deps_dir, ?DEFAULT_DEPS_DIR),
+ State1 = rebar_state:set(State, deps_dir, TestDepsDir),
+ {ok, State2} = rebar_prv_install_deps:handle_deps(State1, TestDeps),
+ AllDeps = rebar_state:get(State2, all_deps, []),
+ State3 = rebar_state:set(State2, deps_dir, DepsDir),
case rebar_topo:sort_apps(ProjectApps1++AllDeps) of
{ok, Sort} ->
- _ToBuild = lists:dropwhile(fun rebar_app_info:valid/1, Sort),
- %% lists:foreach(fun(AppInfo) ->
- %% AppDir = rebar_app_info:dir(AppInfo),
- %% C = rebar_config:consult(AppDir),
- %% S = rebar_state:new(State1, C, AppDir),
- %% rebar_prv_compile:build(S, AppInfo)
- %% end, ToBuild),
- {ok, State1};
+ ToBuild = lists:dropwhile(fun rebar_app_info:valid/1, Sort -- ProjectApps1),
+ State4 = rebar_state:set(State3, deps_to_build, ToBuild),
+ {ok, State4};
{error, Error} ->
{error, Error}
end.