X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=test%2Fhope_kv_list_SUITE.erl;h=b98603988ab3039847fde3c40abbc78df28a43b0;hb=87160c0adda38ad3c307cc4072a03ab606f359ef;hp=511fc32df383bb1ead117029c4ff296dcfc85ccd;hpb=fa24061d65e74509ce66bbff0a6c99cbe33e9ddb;p=hope.git diff --git a/test/hope_kv_list_SUITE.erl b/test/hope_kv_list_SUITE.erl index 511fc32..b986039 100644 --- a/test/hope_kv_list_SUITE.erl +++ b/test/hope_kv_list_SUITE.erl @@ -1,5 +1,7 @@ -module(hope_kv_list_SUITE). +-include_lib("hope_kv_list.hrl"). + %% Callbacks -export( [ all/0 @@ -40,11 +42,39 @@ t_validate_unique_presence(_Cfg) -> DictUnsup = [{a, 1}, {b, 2}, {c, 3}, {d, 4}], DictDups = [{a, 1}, {b, 2}, {c, 3}, {a, 4}], DictMissing = [{a, 1}, {b, 2}], - {ok, ok} = + + {ok, DictOk} = hope_kv_list:validate_unique_presence(DictOk, KeysRequired), + #hope_kv_list_presence_violations + { keys_missing = [] + , keys_duplicated = [] + , keys_unsupported = [] + } = + hope_kv_list:find_unique_presence_violations(DictOk, KeysRequired), + {error, [{keys_unsupported, [d]}]} = hope_kv_list:validate_unique_presence(DictUnsup, KeysRequired), + #hope_kv_list_presence_violations + { keys_missing = [] + , keys_duplicated = [] + , keys_unsupported = [d] + } = + hope_kv_list:find_unique_presence_violations(DictUnsup, KeysRequired), + {error, [{keys_duplicated, [a]}]} = hope_kv_list:validate_unique_presence(DictDups, KeysRequired), + #hope_kv_list_presence_violations + { keys_missing = [] + , keys_duplicated = [a] + , keys_unsupported = [] + } = + hope_kv_list:find_unique_presence_violations(DictDups, KeysRequired), + {error, [{keys_missing, [c]}]} = - hope_kv_list:validate_unique_presence(DictMissing, KeysRequired). + hope_kv_list:validate_unique_presence(DictMissing, KeysRequired), + #hope_kv_list_presence_violations + { keys_missing = [c] + , keys_duplicated = [] + , keys_unsupported = [] + } = + hope_kv_list:find_unique_presence_violations(DictMissing, KeysRequired).