Packages
gleam_stdlib
0.15.0
1.0.3
1.0.2
1.0.1
1.0.0
0.71.0
0.70.0
0.69.0
0.68.1
0.68.0
0.67.1
0.67.0
0.65.0
0.64.0
0.63.2
0.63.1
0.63.0
0.62.1
0.62.0
0.61.0
0.60.0
0.59.0
0.58.0
0.57.0
0.56.0
0.55.0
0.54.0
0.53.0
0.52.0
0.51.0
0.50.0
0.49.0
0.48.0
0.47.0
0.46.0
0.45.0
0.44.0
0.43.0
0.42.0
0.41.0
0.40.0
0.39.0
0.38.0
0.37.0
0.36.0
0.35.1
0.35.0
0.34.0
0.33.1
0.33.0
0.32.1
0.32.0
0.31.0
0.30.2
0.30.1
0.30.0
0.29.2
0.29.1
0.29.0
0.28.2
0.28.1
0.28.0
0.27.0
0.26.1
0.26.0
0.25.0
0.24.0
0.23.0
0.22.3
0.22.2
0.22.1
0.22.0
0.21.0
0.20.0
0.19.3
0.19.2
0.19.1
0.19.0
0.18.1
0.18.0
0.18.0-rc1
0.17.1
0.17.0
0.16.0
0.15.0
0.14.0
0.13.0
0.12.0
0.11.0
0.10.1
0.10.0
0.9.0
0.8.0
0.7.0
0.6.0
0.5.0
0.4.0
0.4.0-rc1
0.3.1
0.3.0
0.2.0
retired
A standard library for the Gleam programming language
Current section
Files
Jump to
Current section
Files
gen/test/gleam@set_test.erl
-module(gleam@set_test).
-compile(no_auto_import).
-export([size_test/0, contains_test/0, delete_test/0, to_list_test/0, from_list_test/0, fold_test/0, filter_test/0, take_test/0, union_test/0, intersection_test/0]).
-spec size_test() -> gleam@should:expectation().
size_test() ->
gleam@should:equal(gleam@set:size(gleam@set:new()), 0),
gleam@should:equal(
gleam@set:size(
gleam@set:insert(gleam@set:insert(gleam@set:new(), 1), 2)
),
2
),
gleam@should:equal(
gleam@set:size(
gleam@set:insert(
gleam@set:insert(gleam@set:insert(gleam@set:new(), 1), 1),
2
)
),
2
).
-spec contains_test() -> gleam@should:expectation().
contains_test() ->
gleam@should:be_true(
gleam@set:contains(gleam@set:insert(gleam@set:new(), 1), 1)
),
gleam@should:be_false(gleam@set:contains(gleam@set:new(), 1)).
-spec delete_test() -> gleam@should:expectation().
delete_test() ->
gleam@should:be_false(
gleam@set:contains(
gleam@set:delete(gleam@set:insert(gleam@set:new(), 1), 1),
1
)
).
-spec to_list_test() -> gleam@should:expectation().
to_list_test() ->
gleam@should:equal(
gleam@list:sort(
gleam@set:to_list(
gleam@set:insert(
gleam@set:insert(gleam@set:insert(gleam@set:new(), 2), 3),
4
)
),
fun gleam@int:compare/2
),
[2, 3, 4]
).
-spec from_list_test() -> gleam@should:expectation().
from_list_test() ->
gleam@should:equal(
gleam@list:sort(
gleam@set:to_list(gleam@set:from_list([1, 1, 2, 4, 3, 2])),
fun gleam@int:compare/2
),
[1, 2, 3, 4]
).
-spec fold_test() -> integer().
fold_test() ->
gleam@set:fold(gleam@set:from_list([1, 3, 9]), 0, fun(M, A) -> M + A end).
-spec filter_test() -> gleam@should:expectation().
filter_test() ->
gleam@should:equal(
gleam@set:to_list(
gleam@set:filter(
gleam@set:from_list([1, 4, 6, 3, 675, 44, 67]),
fun gleam@int:is_even/1
)
),
[4, 6, 44]
).
-spec take_test() -> gleam@should:expectation().
take_test() ->
gleam@should:equal(
gleam@set:take(gleam@set:from_list([1, 2, 3]), [1, 3, 5]),
gleam@set:from_list([1, 3])
).
-spec union_test() -> gleam@should:expectation().
union_test() ->
gleam@should:equal(
gleam@set:to_list(
gleam@set:union(
gleam@set:from_list([1, 2]),
gleam@set:from_list([2, 3])
)
),
[1, 2, 3]
).
-spec intersection_test() -> gleam@should:expectation().
intersection_test() ->
gleam@should:equal(
gleam@set:to_list(
gleam@set:intersection(
gleam@set:from_list([1, 2]),
gleam@set:from_list([2, 3])
)
),
[2]
).