diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/rebar_profiles_SUITE.erl | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/test/rebar_profiles_SUITE.erl b/test/rebar_profiles_SUITE.erl index 03a8090..1411eb6 100644 --- a/test/rebar_profiles_SUITE.erl +++ b/test/rebar_profiles_SUITE.erl @@ -7,14 +7,17 @@ all/0, profile_new_key/1, profile_merge_keys/1, - profile_merges/1]). + profile_merges/1, + add_to_profile/1, + add_to_existing_profile/1]). -include_lib("common_test/include/ct.hrl"). -include_lib("eunit/include/eunit.hrl"). -include_lib("kernel/include/file.hrl"). all() -> - [profile_new_key, profile_merge_keys, profile_merges]. + [profile_new_key, profile_merge_keys, profile_merges, + add_to_profile, add_to_existing_profile]. init_per_suite(Config) -> application:start(meck), @@ -106,3 +109,23 @@ profile_merges(_Config) -> %% Check that a newvalue of []/"" doesn't override non-string oldvalues [key3] = rebar_state:get(State1, test3), [] = rebar_state:get(State1, test4). + +add_to_profile(_Config) -> + RebarConfig = [{foo, true}, {bar, false}], + State = rebar_state:new(RebarConfig), + State1 = rebar_state:add_to_profile(State, test, [{foo, false}]), + State2 = rebar_state:apply_profiles(State1, test), + + Opts = rebar_state:opts(State2), + lists:map(fun(K) -> false = dict:fetch(K, Opts) end, [foo, bar]). + +add_to_existing_profile(_Config) -> + RebarConfig = [{foo, true}, {bar, false}, {profiles, [ + {test, [{foo, false}]} + ]}], + State = rebar_state:new(RebarConfig), + State1 = rebar_state:add_to_profile(State, test, [{baz, false}]), + State2 = rebar_state:apply_profiles(State1, test), + + Opts = rebar_state:opts(State2), + lists:map(fun(K) -> false = dict:fetch(K, Opts) end, [foo, bar, baz]). |