+
+t_fold(Cfg) ->
+ {some, DictModule} = hope_kv_list:get(Cfg, ?DICT_MODULE),
+ KVList = [{a, 1}, {a, 5}, {b, 3}, {c, 4}, {c, 4}],
+ Dict = DictModule:of_kv_list(KVList),
+ 17 = DictModule:fold(Dict, fun (_K, V, Acc) -> V + Acc end, 0).
+
+t_dictionary_specs(Cfg) ->
+ {some, DictModule} = hope_kv_list:get(Cfg, ?DICT_MODULE),
+ [] = proper:check_specs(DictModule).
+
+t_has_key(Cfg) ->
+ {some, DictModule} = hope_kv_list:get(Cfg, ?DICT_MODULE),
+ D = DictModule:of_kv_list([{a, 1}, {b, 2}, {c, 3}]),
+ true = DictModule:has_key(D, a),
+ true = DictModule:has_key(D, b),
+ true = DictModule:has_key(D, c),
+ false = DictModule:has_key(D, d),
+ false = DictModule:has_key(D, e),
+ false = DictModule:has_key(D, f).