diff options
Diffstat (limited to 'test/rebar_hooks_SUITE.erl')
-rw-r--r-- | test/rebar_hooks_SUITE.erl | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/rebar_hooks_SUITE.erl b/test/rebar_hooks_SUITE.erl new file mode 100644 index 0000000..642798f --- /dev/null +++ b/test/rebar_hooks_SUITE.erl @@ -0,0 +1,38 @@ +-module(rebar_hooks_SUITE). + +-export([suite/0, + init_per_suite/1, + end_per_suite/1, + init_per_testcase/2, + all/0, + build_and_clean_app/1]). + +-include_lib("common_test/include/ct.hrl"). +-include_lib("eunit/include/eunit.hrl"). +-include_lib("kernel/include/file.hrl"). + +suite() -> + []. + +init_per_suite(Config) -> + Config. + +end_per_suite(_Config) -> + ok. + +init_per_testcase(_, Config) -> + rebar_test_utils:init_rebar_state(Config). + +all() -> + [build_and_clean_app]. + +%% Test post provider hook cleans compiled project app, leaving it invalid +build_and_clean_app(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]), + rebar_test_utils:run_and_check(Config, [], ["compile"], {ok, [{app, Name, valid}]}), + rebar_test_utils:run_and_check(Config, [{provider_hooks, [{post, [{compile, clean}]}]}], + ["compile"], {ok, [{app, Name, invalid}]}). |