aboutsummaryrefslogtreecommitdiff
path: root/gen/test/gleam@function_test.erl
diff options
context:
space:
mode:
authorRJ Dellecese <rjdellecese@gmail.com>2019-12-30 14:10:10 -0500
committerLouis Pilfold <louis@lpil.uk>2019-12-30 22:36:04 +0000
commitdebc834f87f3b5df7057dc924f577dd57d0fee8c (patch)
tree8cebb8ebe2df1aefaad0e8ecf59e41a10c4d506e /gen/test/gleam@function_test.erl
parent0963c69598a617d30d88a412bd4fc392338c4cb4 (diff)
downloadgleam_stdlib-debc834f87f3b5df7057dc924f577dd57d0fee8c.tar.gz
gleam_stdlib-debc834f87f3b5df7057dc924f577dd57d0fee8c.zip
Update generated files
Diffstat (limited to 'gen/test/gleam@function_test.erl')
-rw-r--r--gen/test/gleam@function_test.erl38
1 files changed, 38 insertions, 0 deletions
diff --git a/gen/test/gleam@function_test.erl b/gen/test/gleam@function_test.erl
new file mode 100644
index 0000000..47758c5
--- /dev/null
+++ b/gen/test/gleam@function_test.erl
@@ -0,0 +1,38 @@
+-module(gleam@function_test).
+-compile(no_auto_import).
+
+-export([compose_test/0, flip_test/0]).
+
+compose_test() ->
+ AddTwo = fun(Int) -> Int + 2 end,
+ AddThree = fun(Int1) -> Int1 + 3 end,
+ AddFive = gleam@function:compose(AddTwo, AddThree),
+ gleam@expect:equal(AddFive(1), 6),
+ HeadToString = gleam@function:compose(
+ fun gleam@list:head/1,
+ fun(IntResult) ->
+ gleam@int:to_string(gleam@result:unwrap(IntResult, 0))
+ end
+ ),
+ gleam@expect:equal(HeadToString([1]), <<"1">>),
+ gleam@expect:equal(HeadToString([]), <<"0">>).
+
+flip_test() ->
+ Fun = fun(String, Int) ->
+ gleam@string:append(
+ gleam@string:append(
+ gleam@string:append(
+ gleam@string:append(<<"String: '">>, String),
+ <<"', Int: '">>
+ ),
+ gleam@int:to_string(Int)
+ ),
+ <<"'">>
+ )
+ end,
+ FlippedFun = gleam@function:flip(Fun),
+ gleam@expect:equal(Fun(<<"Bob">>, 1), <<"String: 'Bob', Int: '1'">>),
+ gleam@expect:equal(
+ FlippedFun(2, <<"Alice">>),
+ <<"String: 'Alice', Int: '2'">>
+ ).