Browse Source

Merge pull request #1810 from tsloughter/bare-ns

run compile provider in default namespace from bare
pull/1812/head
Fred Hebert 6 years ago
committed by GitHub
parent
commit
7eb5d14d53
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 21 additions and 2 deletions
  1. +3
    -1
      src/rebar_prv_bare_compile.erl
  2. +18
    -1
      test/rebar_hooks_SUITE.erl

+ 3
- 1
src/rebar_prv_bare_compile.erl View File

@ -46,7 +46,9 @@ do(State) ->
[AppInfo] = rebar_state:project_apps(State), [AppInfo] = rebar_state:project_apps(State),
AppInfo1 = rebar_app_info:out_dir(AppInfo, rebar_dir:get_cwd()), AppInfo1 = rebar_app_info:out_dir(AppInfo, rebar_dir:get_cwd()),
rebar_prv_compile:compile(State, AppInfo1),
%% run compile in the default namespace
rebar_prv_compile:compile(rebar_state:namespace(State, default), AppInfo1),
rebar_utils:cleanup_code_path(OrigPath), rebar_utils:cleanup_code_path(OrigPath),

+ 18
- 1
test/rebar_hooks_SUITE.erl View File

@ -13,6 +13,7 @@
run_hooks_for_plugins/1, run_hooks_for_plugins/1,
eunit_app_hooks/1, eunit_app_hooks/1,
deps_hook_namespace/1, deps_hook_namespace/1,
bare_compile_hooks_default_ns/1,
deps_clean_hook_namespace/1]). deps_clean_hook_namespace/1]).
-include_lib("common_test/include/ct.hrl"). -include_lib("common_test/include/ct.hrl").
@ -37,7 +38,7 @@ end_per_testcase(_, _Config) ->
all() -> all() ->
[build_and_clean_app, run_hooks_once, run_hooks_once_profiles, [build_and_clean_app, run_hooks_once, run_hooks_once_profiles,
escriptize_artifacts, run_hooks_for_plugins, deps_hook_namespace, escriptize_artifacts, run_hooks_for_plugins, deps_hook_namespace,
deps_clean_hook_namespace, eunit_app_hooks].
bare_compile_hooks_default_ns, deps_clean_hook_namespace, eunit_app_hooks].
%% Test post provider hook cleans compiled project app, leaving it invalid %% Test post provider hook cleans compiled project app, leaving it invalid
build_and_clean_app(Config) -> build_and_clean_app(Config) ->
@ -135,6 +136,22 @@ deps_hook_namespace(Config) ->
{ok, [{dep, "some_dep"}]} {ok, [{dep, "some_dep"}]}
). ).
%% tests that hooks to compile when running bare compile run in the default namespace
bare_compile_hooks_default_ns(Config) ->
AppDir = ?config(apps, Config),
Name = rebar_test_utils:create_random_name("app1_"),
Vsn = rebar_test_utils:create_random_vsn(),
rebar_test_utils:create_app(AppDir, Name, Vsn, [kernel, stdlib]),
RConfFile = rebar_test_utils:create_config(AppDir,
[{provider_hooks, [{post, [{compile, clean}]}]}]),
{ok, RConf} = file:consult(RConfFile),
rebar_test_utils:run_and_check(
Config, RConf, ["bare", "compile", "--paths", "."],
{ok, []}
).
deps_clean_hook_namespace(Config) -> deps_clean_hook_namespace(Config) ->
mock_git_resource:mock([{deps, [{some_dep, "0.0.1"}]}]), mock_git_resource:mock([{deps, [{some_dep, "0.0.1"}]}]),
Deps = rebar_test_utils:expand_deps(git, [{"some_dep", "0.0.1", []}]), Deps = rebar_test_utils:expand_deps(git, [{"some_dep", "0.0.1", []}]),

Loading…
Cancel
Save