aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/gleam/iterator_test.gleam20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/gleam/iterator_test.gleam b/test/gleam/iterator_test.gleam
index 4d43053..f072889 100644
--- a/test/gleam/iterator_test.gleam
+++ b/test/gleam/iterator_test.gleam
@@ -72,3 +72,23 @@ pub fn map_test() {
test([1, 2, 3], f)
test([1, 2, 3, 4, 5, 6, 7, 8], f)
}
+
+// a |> from_list |> filter(_, f) |> to_list == a |> list.filter(_, f)
+pub fn filter_test() {
+ let test = fn(subject, f) {
+ subject
+ |> iterator.from_list
+ |> iterator.filter(_, f)
+ |> iterator.to_list
+ |> expect.equal(_, list.filter(subject, f))
+ }
+
+ let even = fn(x) { x % 2 == 0 }
+ test([], even)
+ test([1], even)
+ test([1, 2], even)
+ test([1, 2, 3], even)
+ test([1, 2, 3, 4], even)
+ test([1, 2, 3, 4, 5], even)
+ test([1, 2, 3, 4, 5, 6], even)
+}