diff options
| author | Carl-Johan Kjellander <cjk@campanja.com> | 2018-01-02 15:24:07 +0100 | 
|---|---|---|
| committer | Carl-Johan Kjellander <cjk@campanja.com> | 2018-01-19 16:11:15 +0100 | 
| commit | a3b5846b49f034854a7ea585d826ab69869320ef (patch) | |
| tree | acbcec7e038d835a6ee9ec554b7c127da5bf2cbf | |
| parent | b5d7d358ffe68c0cd87715033427b55cd6b2dc4b (diff) | |
add test for provider_hook clean
| -rw-r--r-- | test/rebar_hooks_SUITE.erl | 27 | 
1 files changed, 25 insertions, 2 deletions
| diff --git a/test/rebar_hooks_SUITE.erl b/test/rebar_hooks_SUITE.erl index f7fcb82..a36dbe1 100644 --- a/test/rebar_hooks_SUITE.erl +++ b/test/rebar_hooks_SUITE.erl @@ -12,7 +12,8 @@           run_hooks_once_profiles/1,           run_hooks_for_plugins/1,           eunit_app_hooks/1, -         deps_hook_namespace/1]). +         deps_hook_namespace/1, +         deps_clean_hook_namespace/1]).  -include_lib("common_test/include/ct.hrl").  -include_lib("eunit/include/eunit.hrl"). @@ -36,7 +37,7 @@ end_per_testcase(_, _Config) ->  all() ->      [build_and_clean_app, run_hooks_once, run_hooks_once_profiles,       escriptize_artifacts, run_hooks_for_plugins, deps_hook_namespace, -     eunit_app_hooks]. +     deps_clean_hook_namespace, eunit_app_hooks].  %% Test post provider hook cleans compiled project app, leaving it invalid  build_and_clean_app(Config) -> @@ -134,6 +135,28 @@ deps_hook_namespace(Config) ->          {ok, [{dep, "some_dep"}]}      ). +deps_clean_hook_namespace(Config) -> +    mock_git_resource:mock([{deps, [{some_dep, "0.0.1"}]}]), +    Deps = rebar_test_utils:expand_deps(git, [{"some_dep", "0.0.1", []}]), +    TopDeps = rebar_test_utils:top_level_deps(Deps), + +    RebarConfig = [ +        {deps, TopDeps}, +        {overrides, [ +            {override, some_dep, [ +                {provider_hooks, [ +                    {pre, [ +                        {compile, clean} +                    ]} +                ]} +            ]} +        ]} +    ], +    rebar_test_utils:run_and_check( +        Config, RebarConfig, ["clean"], +        {ok, [{dep, "some_dep"}]} +    ). +  %% Checks that a hook that is defined on an app (not a top level hook of a project with subapps) is run  eunit_app_hooks(Config) ->      AppDir = ?config(apps, Config), | 
