瀏覽代碼

Merge pull request #213 from talentdeficit/eunit_fix

preserve state when compiling directories with a `rebar.config`
pull/218/head
Fred Hebert 10 年之前
父節點
當前提交
768cfccda5
共有 1 個檔案被更改,包括 4 行新增5 行删除
  1. +4
    -5
      src/rebar_prv_eunit.erl

+ 4
- 5
src/rebar_prv_eunit.erl 查看文件

@ -127,28 +127,27 @@ set_verbose(Opts) ->
end.
compile_tests(State, TestApps) ->
State1 = replace_src_dirs(State),
F = fun(AppInfo) ->
AppDir = rebar_app_info:dir(AppInfo),
S = case rebar_app_info:state(AppInfo) of
undefined ->
C = rebar_config:consult(AppDir),
rebar_state:new(State1, C, AppDir);
rebar_state:new(State, C, AppDir);
AppState ->
AppState
end,
ok = rebar_erlc_compiler:compile(S,
ok = rebar_erlc_compiler:compile(replace_src_dirs(S),
ec_cnv:to_list(rebar_app_info:dir(AppInfo)),
ec_cnv:to_list(rebar_app_info:out_dir(AppInfo)))
end,
lists:foreach(F, TestApps),
compile_bare_tests(State1, TestApps).
compile_bare_tests(State, TestApps).
compile_bare_tests(State, TestApps) ->
F = fun(App) -> rebar_app_info:dir(App) == rebar_dir:get_cwd() end,
case lists:filter(F, TestApps) of
%% compile just the `test` directory of the base dir
[] -> rebar_erlc_compiler:compile(State,
[] -> rebar_erlc_compiler:compile(replace_src_dirs(State),
rebar_dir:get_cwd(),
rebar_dir:base_dir(State));
%% already compiled `./test` so do nothing

Loading…
取消
儲存