Packages
gleam_stdlib
0.17.1
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@dynamic_test.erl
-module(gleam@dynamic_test).
-compile(no_auto_import).
-export([bit_string_test/0, bit_string_erlang_test/0, string_test/0, string_non_utf8_test/0, int_test/0, float_test/0, float_on_js_is_also_int_test/0, bool_test/0, typed_list_test/0, optional_test/0, field_test/0, element_test/0, tuple2_test/0, typed_tuple2_test/0, tuple3_test/0, typed_tuple3_test/0, tuple4_test/0, typed_tuple4_test/0, tuple5_test/0, typed_tuple5_test/0, tuple6_test/0, typed_tuple6_test/0, map_test/0, list_test/0, result_test/0, typed_result_test/0]).
-spec bit_string_test() -> nil.
bit_string_test() ->
_pipe = <<>>,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:bit_string(_pipe@1),
gleam@should:equal(_pipe@2, {ok, <<>>}),
_pipe@3 = <<"Hello"/utf8>>,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:bit_string(_pipe@4),
gleam@should:equal(_pipe@5, {ok, <<"Hello"/utf8>>}),
_pipe@6 = 1,
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:bit_string(_pipe@7),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"BitString"/utf8>>, <<"Int"/utf8>>}}
),
_pipe@9 = [],
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:bit_string(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"BitString"/utf8>>, <<"List"/utf8>>}}
).
-spec bit_string_erlang_test() -> nil.
bit_string_erlang_test() ->
_pipe = <<65535:16>>,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:bit_string(_pipe@1),
gleam@should:equal(_pipe@2, {ok, <<65535:16>>}).
-spec string_test() -> nil.
string_test() ->
_pipe = <<""/utf8>>,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:string(_pipe@1),
gleam@should:equal(_pipe@2, {ok, <<""/utf8>>}),
_pipe@3 = <<"Hello"/utf8>>,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:string(_pipe@4),
gleam@should:equal(_pipe@5, {ok, <<"Hello"/utf8>>}),
_pipe@6 = 1,
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:string(_pipe@7),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"String"/utf8>>, <<"Int"/utf8>>}}
),
_pipe@9 = [],
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:string(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"String"/utf8>>, <<"List"/utf8>>}}
).
-spec string_non_utf8_test() -> nil.
string_non_utf8_test() ->
_pipe = <<65535:16>>,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:string(_pipe@1),
gleam@should:equal(
_pipe@2,
{error, {decode_error, <<"String"/utf8>>, <<"BitString"/utf8>>}}
).
-spec int_test() -> nil.
int_test() ->
_pipe = 1,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:int(_pipe@1),
gleam@should:equal(_pipe@2, {ok, 1}),
_pipe@3 = 2,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:int(_pipe@4),
gleam@should:equal(_pipe@5, {ok, 2}),
_pipe@6 = [],
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:int(_pipe@7),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Int"/utf8>>, <<"List"/utf8>>}}
).
-spec float_test() -> nil.
float_test() ->
_pipe = 1.0,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:float(_pipe@1),
gleam@should:equal(_pipe@2, {ok, 1.0}),
_pipe@3 = 2.2,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:float(_pipe@4),
gleam@should:equal(_pipe@5, {ok, 2.2}),
_pipe@6 = [],
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:float(_pipe@7),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Float"/utf8>>, <<"List"/utf8>>}}
).
-spec float_on_js_is_also_int_test() -> nil.
float_on_js_is_also_int_test() ->
_pipe = 1,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:float(_pipe@1),
gleam@should:equal(
_pipe@2,
{error, {decode_error, <<"Float"/utf8>>, <<"Int"/utf8>>}}
),
_pipe@3 = 1.0,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:int(_pipe@4),
gleam@should:equal(
_pipe@5,
{error, {decode_error, <<"Int"/utf8>>, <<"Float"/utf8>>}}
).
-spec bool_test() -> nil.
bool_test() ->
_pipe = true,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:bool(_pipe@1),
gleam@should:equal(_pipe@2, {ok, true}),
_pipe@3 = false,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:bool(_pipe@4),
gleam@should:equal(_pipe@5, {ok, false}),
_pipe@6 = 1,
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:bool(_pipe@7),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Bool"/utf8>>, <<"Int"/utf8>>}}
),
_pipe@9 = 1.5,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:bool(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"Bool"/utf8>>, <<"Float"/utf8>>}}
),
_pipe@12 = [],
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:bool(_pipe@13),
gleam@should:equal(
_pipe@14,
{error, {decode_error, <<"Bool"/utf8>>, <<"List"/utf8>>}}
).
-spec typed_list_test() -> nil.
typed_list_test() ->
_pipe = [],
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:typed_list(_pipe@1, fun gleam@dynamic:string/1),
gleam@should:equal(_pipe@2, {ok, []}),
_pipe@3 = [],
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:typed_list(_pipe@4, fun gleam@dynamic:int/1),
gleam@should:equal(_pipe@5, {ok, []}),
_pipe@6 = [1, 2, 3],
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:typed_list(_pipe@7, fun gleam@dynamic:int/1),
gleam@should:equal(_pipe@8, {ok, [1, 2, 3]}),
_pipe@9 = [[1], [2], [3]],
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:typed_list(
_pipe@10,
fun(_capture) ->
gleam@dynamic:typed_list(_capture, fun gleam@dynamic:int/1)
end
),
gleam@should:equal(_pipe@11, {ok, [[1], [2], [3]]}),
_pipe@12 = 1,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:typed_list(_pipe@13, fun gleam@dynamic:string/1),
gleam@should:be_error(_pipe@14),
_pipe@15 = 1.0,
_pipe@16 = gleam@dynamic:from(_pipe@15),
_pipe@17 = gleam@dynamic:typed_list(_pipe@16, fun gleam@dynamic:int/1),
gleam@should:be_error(_pipe@17),
_pipe@18 = [<<""/utf8>>],
_pipe@19 = gleam@dynamic:from(_pipe@18),
_pipe@20 = gleam@dynamic:typed_list(_pipe@19, fun gleam@dynamic:int/1),
gleam@should:be_error(_pipe@20),
_pipe@21 = [gleam@dynamic:from(1),
gleam@dynamic:from(<<"not an int"/utf8>>)],
_pipe@22 = gleam@dynamic:from(_pipe@21),
_pipe@23 = gleam@dynamic:typed_list(_pipe@22, fun gleam@dynamic:int/1),
gleam@should:be_error(_pipe@23).
-spec optional_test() -> nil.
optional_test() ->
_pipe = 1,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:optional(_pipe@1, fun gleam@dynamic:int/1),
gleam@should:equal(_pipe@2, {ok, {some, 1}}),
_pipe@3 = none,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:optional(_pipe@4, fun gleam@dynamic:int/1),
gleam@should:equal(_pipe@5, {ok, none}),
_pipe@6 = nil,
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:optional(_pipe@7, fun gleam@dynamic:int/1),
gleam@should:equal(_pipe@8, {ok, none}),
_pipe@9 = 1,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:optional(_pipe@10, fun gleam@dynamic:string/1),
gleam@should:be_error(_pipe@11).
-spec field_test() -> nil.
field_test() ->
_pipe = gleam@map:new(),
_pipe@1 = gleam@map:insert(_pipe, <<"ok"/utf8>>, 1),
_pipe@2 = gleam@dynamic:from(_pipe@1),
_pipe@3 = gleam@dynamic:field(_pipe@2, <<"ok"/utf8>>),
gleam@should:equal(_pipe@3, {ok, gleam@dynamic:from(1)}),
_pipe@4 = gleam@map:new(),
_pipe@5 = gleam@map:insert(_pipe@4, <<"ok"/utf8>>, 3),
_pipe@6 = gleam@map:insert(_pipe@5, <<"error"/utf8>>, 1),
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:field(_pipe@7, <<"ok"/utf8>>),
gleam@should:equal(_pipe@8, {ok, gleam@dynamic:from(3)}),
_pipe@9 = gleam@map:new(),
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:field(_pipe@10, <<"ok"/utf8>>),
gleam@should:be_error(_pipe@11),
_pipe@12 = 1,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:field(_pipe@13, <<"ok"/utf8>>),
gleam@should:be_error(_pipe@14),
_pipe@15 = [],
_pipe@16 = gleam@dynamic:from(_pipe@15),
_pipe@17 = gleam@dynamic:field(_pipe@16, []),
gleam@should:be_error(_pipe@17).
-spec element_test() -> nil.
element_test() ->
Ok_one_tuple = {<<"ok"/utf8>>, 1},
_pipe = Ok_one_tuple,
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:element(_pipe@1, 0),
gleam@should:equal(_pipe@2, {ok, gleam@dynamic:from(<<"ok"/utf8>>)}),
_pipe@3 = Ok_one_tuple,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:element(_pipe@4, 1),
gleam@should:equal(_pipe@5, {ok, gleam@dynamic:from(1)}),
_pipe@6 = Ok_one_tuple,
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:element(_pipe@7, 2),
gleam@should:equal(
_pipe@8,
{error,
{decode_error,
<<"Tuple of at least 3 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@9 = Ok_one_tuple,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:element(_pipe@10, -1),
gleam@should:equal(_pipe@11, {ok, gleam@dynamic:from(1)}),
_pipe@12 = Ok_one_tuple,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:element(_pipe@13, -3),
gleam@should:equal(
_pipe@14,
{error,
{decode_error,
<<"Tuple of at least 3 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@15 = 1,
_pipe@16 = gleam@dynamic:from(_pipe@15),
_pipe@17 = gleam@dynamic:element(_pipe@16, -3),
gleam@should:equal(
_pipe@17,
{error, {decode_error, <<"Tuple"/utf8>>, <<"Int"/utf8>>}}
),
_pipe@18 = 1,
_pipe@19 = gleam@dynamic:from(_pipe@18),
_pipe@20 = gleam@dynamic:element(_pipe@19, 0),
gleam@should:equal(
_pipe@20,
{error, {decode_error, <<"Tuple"/utf8>>, <<"Int"/utf8>>}}
),
_pipe@21 = gleam@map:new(),
_pipe@22 = gleam@map:insert(_pipe@21, 1, <<"ok"/utf8>>),
_pipe@23 = gleam@dynamic:from(_pipe@22),
_pipe@24 = gleam@dynamic:element(_pipe@23, 0),
gleam@should:equal(
_pipe@24,
{error, {decode_error, <<"Tuple"/utf8>>, <<"Map"/utf8>>}}
).
-spec tuple2_test() -> nil.
tuple2_test() ->
_pipe = {1, 2},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:tuple2(_pipe@1),
gleam@should:equal(
_pipe@2,
{ok, {gleam@dynamic:from(1), gleam@dynamic:from(2)}}
),
_pipe@3 = {1, <<""/utf8>>},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:tuple2(_pipe@4),
gleam@should:equal(
_pipe@5,
{ok, {gleam@dynamic:from(1), gleam@dynamic:from(<<""/utf8>>)}}
),
_pipe@6 = {1, 2, 3},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:tuple2(_pipe@7),
gleam@should:equal(
_pipe@8,
{error,
{decode_error,
<<"Tuple of 2 elements"/utf8>>,
<<"Tuple of 3 elements"/utf8>>}}
),
_pipe@9 = 1,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:tuple2(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"Tuple of 2 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec typed_tuple2_test() -> nil.
typed_tuple2_test() ->
_pipe = {1, 2},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:typed_tuple2(
_pipe@1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(_pipe@2, {ok, {1, 2}}),
_pipe@3 = {1, <<""/utf8>>},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:typed_tuple2(
_pipe@4,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1
),
gleam@should:equal(_pipe@5, {ok, {1, <<""/utf8>>}}),
_pipe@6 = {1, <<""/utf8>>},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:typed_tuple2(
_pipe@7,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Int"/utf8>>, <<"String"/utf8>>}}
),
_pipe@9 = {1, 2, 3},
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:typed_tuple2(
_pipe@10,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@11,
{error,
{decode_error,
<<"Tuple of 2 elements"/utf8>>,
<<"Tuple of 3 elements"/utf8>>}}
),
_pipe@12 = 1,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:typed_tuple2(
_pipe@13,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@14,
{error, {decode_error, <<"Tuple of 2 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec tuple3_test() -> nil.
tuple3_test() ->
_pipe = {1, 2, 3},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:tuple3(_pipe@1),
gleam@should:equal(
_pipe@2,
{ok,
{gleam@dynamic:from(1), gleam@dynamic:from(2), gleam@dynamic:from(3)}}
),
_pipe@3 = {1, <<""/utf8>>, 3.0},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:tuple3(_pipe@4),
gleam@should:equal(
_pipe@5,
{ok,
{gleam@dynamic:from(1),
gleam@dynamic:from(<<""/utf8>>),
gleam@dynamic:from(3.0)}}
),
_pipe@6 = {1, 2},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:tuple3(_pipe@7),
gleam@should:equal(
_pipe@8,
{error,
{decode_error,
<<"Tuple of 3 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@9 = 1,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:tuple3(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"Tuple of 3 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec typed_tuple3_test() -> nil.
typed_tuple3_test() ->
_pipe = {1, 2, 3},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:typed_tuple3(
_pipe@1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(_pipe@2, {ok, {1, 2, 3}}),
_pipe@3 = {1, <<""/utf8>>, 3.0},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:typed_tuple3(
_pipe@4,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1,
fun gleam@dynamic:float/1
),
gleam@should:equal(_pipe@5, {ok, {1, <<""/utf8>>, 3.0}}),
_pipe@6 = {1, 2, <<""/utf8>>},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:typed_tuple3(
_pipe@7,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Int"/utf8>>, <<"String"/utf8>>}}
),
_pipe@9 = {1, 2},
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:typed_tuple3(
_pipe@10,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@11,
{error,
{decode_error,
<<"Tuple of 3 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@12 = 1,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:typed_tuple3(
_pipe@13,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@14,
{error, {decode_error, <<"Tuple of 3 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec tuple4_test() -> nil.
tuple4_test() ->
_pipe = {1, 2, 3, 4},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:tuple4(_pipe@1),
gleam@should:equal(
_pipe@2,
{ok,
{gleam@dynamic:from(1),
gleam@dynamic:from(2),
gleam@dynamic:from(3),
gleam@dynamic:from(4)}}
),
_pipe@3 = {1, <<""/utf8>>, 3.0, 4},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:tuple4(_pipe@4),
gleam@should:equal(
_pipe@5,
{ok,
{gleam@dynamic:from(1),
gleam@dynamic:from(<<""/utf8>>),
gleam@dynamic:from(3.0),
gleam@dynamic:from(4)}}
),
_pipe@6 = {1, 2},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:tuple4(_pipe@7),
gleam@should:equal(
_pipe@8,
{error,
{decode_error,
<<"Tuple of 4 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@9 = 1,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:tuple4(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"Tuple of 4 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec typed_tuple4_test() -> nil.
typed_tuple4_test() ->
_pipe = {1, 2, 3, 4},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:typed_tuple4(
_pipe@1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(_pipe@2, {ok, {1, 2, 3, 4}}),
_pipe@3 = {1, <<""/utf8>>, 3.0, 4},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:typed_tuple4(
_pipe@4,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1,
fun gleam@dynamic:float/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(_pipe@5, {ok, {1, <<""/utf8>>, 3.0, 4}}),
_pipe@6 = {1, 2, 3, <<""/utf8>>},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:typed_tuple4(
_pipe@7,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Int"/utf8>>, <<"String"/utf8>>}}
),
_pipe@9 = {1, 2},
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:typed_tuple4(
_pipe@10,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@11,
{error,
{decode_error,
<<"Tuple of 4 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@12 = 1,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:typed_tuple4(
_pipe@13,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@14,
{error, {decode_error, <<"Tuple of 4 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec tuple5_test() -> nil.
tuple5_test() ->
_pipe = {1, 2, 3, 4, 5},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:tuple5(_pipe@1),
gleam@should:equal(
_pipe@2,
{ok,
{gleam@dynamic:from(1),
gleam@dynamic:from(2),
gleam@dynamic:from(3),
gleam@dynamic:from(4),
gleam@dynamic:from(5)}}
),
_pipe@3 = {1, <<""/utf8>>, 3.0, 4, 5},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:tuple5(_pipe@4),
gleam@should:equal(
_pipe@5,
{ok,
{gleam@dynamic:from(1),
gleam@dynamic:from(<<""/utf8>>),
gleam@dynamic:from(3.0),
gleam@dynamic:from(4),
gleam@dynamic:from(5)}}
),
_pipe@6 = {1, 2},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:tuple5(_pipe@7),
gleam@should:equal(
_pipe@8,
{error,
{decode_error,
<<"Tuple of 5 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@9 = 1,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:tuple5(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"Tuple of 5 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec typed_tuple5_test() -> nil.
typed_tuple5_test() ->
_pipe = {1, 2, 3, 4, 5},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:typed_tuple5(
_pipe@1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(_pipe@2, {ok, {1, 2, 3, 4, 5}}),
_pipe@3 = {1, <<""/utf8>>, 3.0, 4, 5},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:typed_tuple5(
_pipe@4,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1,
fun gleam@dynamic:float/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(_pipe@5, {ok, {1, <<""/utf8>>, 3.0, 4, 5}}),
_pipe@6 = {1, 2, 3, 4, <<""/utf8>>},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:typed_tuple5(
_pipe@7,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Int"/utf8>>, <<"String"/utf8>>}}
),
_pipe@9 = {1, 2},
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:typed_tuple5(
_pipe@10,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@11,
{error,
{decode_error,
<<"Tuple of 5 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@12 = 1,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:typed_tuple5(
_pipe@13,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@14,
{error, {decode_error, <<"Tuple of 5 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec tuple6_test() -> nil.
tuple6_test() ->
_pipe = {1, 2, 3, 4, 5, 6},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:tuple6(_pipe@1),
gleam@should:equal(
_pipe@2,
{ok,
{gleam@dynamic:from(1),
gleam@dynamic:from(2),
gleam@dynamic:from(3),
gleam@dynamic:from(4),
gleam@dynamic:from(5),
gleam@dynamic:from(6)}}
),
_pipe@3 = {1, <<""/utf8>>, 3.0, 4, 5, 6},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:tuple6(_pipe@4),
gleam@should:equal(
_pipe@5,
{ok,
{gleam@dynamic:from(1),
gleam@dynamic:from(<<""/utf8>>),
gleam@dynamic:from(3.0),
gleam@dynamic:from(4),
gleam@dynamic:from(5),
gleam@dynamic:from(6)}}
),
_pipe@6 = {1, 2},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:tuple6(_pipe@7),
gleam@should:equal(
_pipe@8,
{error,
{decode_error,
<<"Tuple of 6 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@9 = 1,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:tuple6(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"Tuple of 6 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec typed_tuple6_test() -> nil.
typed_tuple6_test() ->
_pipe = {1, 2, 3, 4, 5, 6},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:typed_tuple6(
_pipe@1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(_pipe@2, {ok, {1, 2, 3, 4, 5, 6}}),
_pipe@3 = {1, <<""/utf8>>, 3.0, 4, 5, 6},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:typed_tuple6(
_pipe@4,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1,
fun gleam@dynamic:float/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(_pipe@5, {ok, {1, <<""/utf8>>, 3.0, 4, 5, 6}}),
_pipe@6 = {1, 2, 3, 4, 5, <<""/utf8>>},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:typed_tuple6(
_pipe@7,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Int"/utf8>>, <<"String"/utf8>>}}
),
_pipe@9 = {1, 2},
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:typed_tuple6(
_pipe@10,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@11,
{error,
{decode_error,
<<"Tuple of 6 elements"/utf8>>,
<<"Tuple of 2 elements"/utf8>>}}
),
_pipe@12 = 1,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:typed_tuple6(
_pipe@13,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:int/1
),
gleam@should:equal(
_pipe@14,
{error, {decode_error, <<"Tuple of 6 elements"/utf8>>, <<"Int"/utf8>>}}
).
-spec map_test() -> nil.
map_test() ->
_pipe = gleam@map:new(),
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:map(_pipe@1),
gleam@should:equal(_pipe@2, {ok, gleam@map:new()}),
_pipe@3 = 1,
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:map(_pipe@4),
gleam@should:equal(
_pipe@5,
{error, {decode_error, <<"Map"/utf8>>, <<"Int"/utf8>>}}
).
-spec list_test() -> nil.
list_test() ->
_pipe = [],
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:list(_pipe@1),
gleam@should:equal(_pipe@2, {ok, []}),
_pipe@3 = [1, 2],
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:list(_pipe@4),
gleam@should:equal(
_pipe@5,
{ok, [gleam@dynamic:from(1), gleam@dynamic:from(2)]}
),
_pipe@6 = [gleam@dynamic:from(1), gleam@dynamic:from(2.0)],
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:list(_pipe@7),
gleam@should:equal(
_pipe@8,
{ok, [gleam@dynamic:from(1), gleam@dynamic:from(2.0)]}
),
_pipe@9 = 1,
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:list(_pipe@10),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"List"/utf8>>, <<"Int"/utf8>>}}
).
-spec result_test() -> nil.
result_test() ->
_pipe = {ok, 1},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:result(_pipe@1),
gleam@should:equal(_pipe@2, {ok, {ok, gleam@dynamic:from(1)}}),
_pipe@3 = {error, <<"error"/utf8>>},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:result(_pipe@4),
gleam@should:equal(
_pipe@5,
{ok, {error, gleam@dynamic:from(<<"error"/utf8>>)}}
),
_pipe@6 = 1,
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:result(_pipe@7),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Result"/utf8>>, <<"Int"/utf8>>}}
),
_pipe@9 = {<<"bad"/utf8>>, <<"value"/utf8>>},
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:result(_pipe@10),
gleam@should:equal(
_pipe@11,
{error,
{decode_error, <<"Result"/utf8>>, <<"Tuple of 2 elements"/utf8>>}}
).
-spec typed_result_test() -> nil.
typed_result_test() ->
_pipe = {ok, 1},
_pipe@1 = gleam@dynamic:from(_pipe),
_pipe@2 = gleam@dynamic:typed_result(
_pipe@1,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1
),
gleam@should:equal(_pipe@2, {ok, {ok, 1}}),
_pipe@3 = {error, <<"error"/utf8>>},
_pipe@4 = gleam@dynamic:from(_pipe@3),
_pipe@5 = gleam@dynamic:typed_result(
_pipe@4,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1
),
gleam@should:equal(_pipe@5, {ok, {error, <<"error"/utf8>>}}),
_pipe@6 = {ok, <<"1"/utf8>>},
_pipe@7 = gleam@dynamic:from(_pipe@6),
_pipe@8 = gleam@dynamic:typed_result(
_pipe@7,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1
),
gleam@should:equal(
_pipe@8,
{error, {decode_error, <<"Int"/utf8>>, <<"String"/utf8>>}}
),
_pipe@9 = {error, 1},
_pipe@10 = gleam@dynamic:from(_pipe@9),
_pipe@11 = gleam@dynamic:typed_result(
_pipe@10,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1
),
gleam@should:equal(
_pipe@11,
{error, {decode_error, <<"String"/utf8>>, <<"Int"/utf8>>}}
),
_pipe@12 = 1,
_pipe@13 = gleam@dynamic:from(_pipe@12),
_pipe@14 = gleam@dynamic:typed_result(
_pipe@13,
fun gleam@dynamic:int/1,
fun gleam@dynamic:string/1
),
gleam@should:equal(
_pipe@14,
{error, {decode_error, <<"Result"/utf8>>, <<"Int"/utf8>>}}
).