diff options
Diffstat (limited to 'gen/test/gleam@map_test.erl')
-rw-r--r-- | gen/test/gleam@map_test.erl | 191 |
1 files changed, 0 insertions, 191 deletions
diff --git a/gen/test/gleam@map_test.erl b/gen/test/gleam@map_test.erl deleted file mode 100644 index 4729edf..0000000 --- a/gen/test/gleam@map_test.erl +++ /dev/null @@ -1,191 +0,0 @@ --module(gleam@map_test). --compile(no_auto_import). - --export([from_list_test/0, has_key_test/0, new_test/0, get_test/0, insert_test/0, map_values_test/0, keys_test/0, values_test/0, take_test/0, drop_test/0, merge_test/0, delete_test/0, update_test/0, fold_test/0]). - -from_list_test() -> - gleam@should:equal( - gleam@map:size(gleam@map:from_list([{4, 0}, {1, 0}])), - 2 - ), - gleam@should:equal( - gleam@map:from_list([{1, 0}, {1, 1}]), - gleam@map:from_list([{1, 1}]) - ). - -has_key_test() -> - gleam@should:be_false(gleam@map:has_key(gleam@map:from_list([]), 1)), - gleam@should:be_true(gleam@map:has_key(gleam@map:from_list([{1, 0}]), 1)), - gleam@should:be_true( - gleam@map:has_key(gleam@map:from_list([{4, 0}, {1, 0}]), 1) - ), - gleam@should:be_false( - gleam@map:has_key(gleam@map:from_list([{4, 0}, {1, 0}]), 0) - ). - -new_test() -> - gleam@should:equal(gleam@map:size(gleam@map:new()), 0), - gleam@should:equal(gleam@map:to_list(gleam@map:new()), []). - -get_test() -> - Proplist = [{4, 0}, {1, 1}], - M = gleam@map:from_list(Proplist), - gleam@should:equal(gleam@map:get(M, 4), {ok, 0}), - gleam@should:equal(gleam@map:get(M, 1), {ok, 1}), - gleam@should:equal(gleam@map:get(M, 2), {error, nil}). - -insert_test() -> - gleam@should:equal( - gleam@map:insert( - gleam@map:insert( - gleam@map:insert(gleam@map:new(), <<"a"/utf8>>, 0), - <<"b"/utf8>>, - 1 - ), - <<"c"/utf8>>, - 2 - ), - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ) - ). - -map_values_test() -> - gleam@should:equal( - gleam@map:map_values( - gleam@map:from_list([{1, 0}, {2, 1}, {3, 2}]), - fun(K, V) -> K + V end - ), - gleam@map:from_list([{1, 1}, {2, 3}, {3, 5}]) - ). - -keys_test() -> - gleam@should:equal( - gleam@map:keys( - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ) - ), - [<<"a"/utf8>>, <<"b"/utf8>>, <<"c"/utf8>>] - ). - -values_test() -> - gleam@should:equal( - gleam@map:values( - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ) - ), - [0, 1, 2] - ). - -take_test() -> - gleam@should:equal( - gleam@map:take( - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ), - [<<"a"/utf8>>, <<"b"/utf8>>, <<"d"/utf8>>] - ), - gleam@map:from_list([{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}]) - ). - -drop_test() -> - gleam@should:equal( - gleam@map:drop( - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ), - [<<"a"/utf8>>, <<"b"/utf8>>, <<"d"/utf8>>] - ), - gleam@map:from_list([{<<"c"/utf8>>, 2}]) - ). - -merge_test() -> - A = gleam@map:from_list( - [{<<"a"/utf8>>, 2}, {<<"c"/utf8>>, 4}, {<<"d"/utf8>>, 3}] - ), - B = gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ), - gleam@should:equal( - gleam@map:merge(A, B), - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, - {<<"b"/utf8>>, 1}, - {<<"c"/utf8>>, 2}, - {<<"d"/utf8>>, 3}] - ) - ), - gleam@should:equal( - gleam@map:merge(B, A), - gleam@map:from_list( - [{<<"a"/utf8>>, 2}, - {<<"b"/utf8>>, 1}, - {<<"c"/utf8>>, 4}, - {<<"d"/utf8>>, 3}] - ) - ). - -delete_test() -> - gleam@should:equal( - gleam@map:delete( - gleam@map:delete( - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ), - <<"a"/utf8>> - ), - <<"d"/utf8>> - ), - gleam@map:from_list([{<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}]) - ). - -update_test() -> - Dict = gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ), - IncOrZero = fun(X) -> case X of - {ok, I} -> - I + 1; - - {error, _} -> - 0 - end end, - gleam@should:equal( - gleam@map:update(Dict, <<"a"/utf8>>, IncOrZero), - gleam@map:from_list( - [{<<"a"/utf8>>, 1}, {<<"b"/utf8>>, 1}, {<<"c"/utf8>>, 2}] - ) - ), - gleam@should:equal( - gleam@map:update(Dict, <<"b"/utf8>>, IncOrZero), - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, {<<"b"/utf8>>, 2}, {<<"c"/utf8>>, 2}] - ) - ), - gleam@should:equal( - gleam@map:update(Dict, <<"z"/utf8>>, IncOrZero), - gleam@map:from_list( - [{<<"a"/utf8>>, 0}, - {<<"b"/utf8>>, 1}, - {<<"c"/utf8>>, 2}, - {<<"z"/utf8>>, 0}] - ) - ). - -fold_test() -> - Dict = gleam@map:from_list( - [{<<"a"/utf8>>, 0}, - {<<"b"/utf8>>, 1}, - {<<"c"/utf8>>, 2}, - {<<"d"/utf8>>, 3}] - ), - Add = fun(_, V, Acc) -> V + Acc end, - gleam@should:equal(gleam@map:fold(Dict, 0, Add), 6), - Concat = fun(K, _, Acc1) -> gleam@string:append(Acc1, K) end, - gleam@should:equal( - gleam@map:fold(Dict, <<""/utf8>>, Concat), - <<"abcd"/utf8>> - ), - gleam@should:equal(gleam@map:fold(gleam@map:from_list([]), 0, Add), 0). |