summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/rebar_profiles_SUITE.erl27
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]).