diff options
author | Louis Pilfold <louis@lpil.uk> | 2020-01-05 18:28:04 +0000 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2020-01-05 18:33:28 +0000 |
commit | 330ea699f3c20519c174c2299215737cef5f4cbf (patch) | |
tree | a4afa9628640ac993a8cbb5eb643b04e13422969 /test | |
parent | debc834f87f3b5df7057dc924f577dd57d0fee8c (diff) | |
download | gleam_stdlib-330ea699f3c20519c174c2299215737cef5f4cbf.tar.gz gleam_stdlib-330ea699f3c20519c174c2299215737cef5f4cbf.zip |
function.identity
Diffstat (limited to 'test')
-rw-r--r-- | test/gleam/function_test.gleam | 50 |
1 files changed, 32 insertions, 18 deletions
diff --git a/test/gleam/function_test.gleam b/test/gleam/function_test.gleam index 5b3ca42..1c3b4b8 100644 --- a/test/gleam/function_test.gleam +++ b/test/gleam/function_test.gleam @@ -1,15 +1,15 @@ import gleam/expect -import gleam/function.{compose, flip} -import gleam/int as int_mod +import gleam/function +import gleam/int import gleam/list import gleam/result -import gleam/string as string_mod +import gleam/string pub fn compose_test() { let add_two = fn(int: Int) { int + 2 } let add_three = fn(int: Int) { int + 3 } - let add_five = compose(add_two, add_three) + let add_five = function.compose(add_two, add_three) 1 |> add_five @@ -18,13 +18,9 @@ pub fn compose_test() { // Takes a list of ints and returns the head as a string (if there is one, or // else "0" if there is not) let head_to_string = - compose( - list.head, - fn(int_result: Result(Int, Nil)) { - result.unwrap(int_result, 0) - |> int_mod.to_string - } - ) + list.head + |> function.compose(_, result.unwrap(_, 0)) + |> function.compose(_, int.to_string) [1] |> head_to_string @@ -36,15 +32,15 @@ pub fn compose_test() { } pub fn flip_test() { - let fun = fn(string: String, int: Int) { - string - |> string_mod.append("String: '", _) - |> string_mod.append(_, "', Int: '") - |> string_mod.append(_, int_mod.to_string(int)) - |> string_mod.append(_, "'") + let fun = fn(s: String, i: Int) { + s + |> string.append("String: '", _) + |> string.append(_, "', Int: '") + |> string.append(_, int.to_string(i)) + |> string.append(_, "'") } - let flipped_fun = flip(fun) + let flipped_fun = function.flip(fun) fun("Bob", 1) |> expect.equal(_, "String: 'Bob', Int: '1'") @@ -52,3 +48,21 @@ pub fn flip_test() { flipped_fun(2, "Alice") |> expect.equal(_, "String: 'Alice', Int: '2'") } + +pub fn identity_test() { + 1 + |> function.identity + |> expect.equal(_, 1) + + "" + |> function.identity + |> expect.equal(_, "") + + [] + |> function.identity + |> expect.equal(_, []) + + tuple(1, 2.0) + |> function.identity + |> expect.equal(_, tuple(1, 2.0)) +} |