aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/test/lux.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/test/lux.lux')
-rw-r--r--stdlib/source/test/lux.lux21
1 files changed, 20 insertions, 1 deletions
diff --git a/stdlib/source/test/lux.lux b/stdlib/source/test/lux.lux
index 11e3b6c73..04f6bea3f 100644
--- a/stdlib/source/test/lux.lux
+++ b/stdlib/source/test/lux.lux
@@ -779,7 +779,11 @@
Test
(do random.monad
[left random.nat
- right (random.ascii/lower 1)]
+ right (random.ascii/lower 1)
+
+ item/0 random.nat
+ item/1 random.nat
+ item/2 random.nat]
($_ _.and
(_.cover [/.Either]
(and (exec
@@ -833,6 +837,21 @@
(and (/.is? left left)
(and (n.= not_left left)
(not (/.is? not_left left))))))
+ (_.cover [/.Rec]
+ (let [list (: (/.Rec NList
+ (Maybe [Nat NList]))
+ (#.Some [item/0
+ (#.Some [item/1
+ (#.Some [item/2
+ #.None])])]))]
+ (case list
+ (#.Some [actual/0 (#.Some [actual/1 (#.Some [actual/2 #.None])])])
+ (and (is? item/0 actual/0)
+ (is? item/1 actual/1)
+ (is? item/2 actual/2))
+
+ _
+ false)))
)))
(type: (Pair l r)