aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/gleam/iterator_test.gleam25
1 files changed, 25 insertions, 0 deletions
diff --git a/test/gleam/iterator_test.gleam b/test/gleam/iterator_test.gleam
index fbbf1c6..2d9ee3f 100644
--- a/test/gleam/iterator_test.gleam
+++ b/test/gleam/iterator_test.gleam
@@ -1,6 +1,10 @@
import gleam/expect
import gleam/iterator
+import gleam/list
+// TODO: Property tests
+
+// a |> from_list |> to_list == a
pub fn to_from_list_test() {
let test = fn(subject) {
subject
@@ -14,3 +18,24 @@ pub fn to_from_list_test() {
test([1, 2])
test([1, 2, 4, 8])
}
+
+// a |> from_list |> take(_, n) == a |> list.take(_, n)
+pub fn take_test() {
+ let test = fn(n, subject) {
+ subject
+ |> iterator.from_list
+ |> iterator.take(_, n)
+ |> expect.equal(_, list.take(subject, n))
+ }
+
+ test(0, [])
+ test(1, [])
+ test(-1, [])
+ test(0, [0])
+ test(1, [0])
+ test(-1, [0])
+ test(0, [0, 1, 2, 3, 4])
+ test(1, [0, 1, 2, 3, 4])
+ test(2, [0, 1, 2, 3, 4])
+ test(22, [0, 1, 2, 3, 4])
+}