aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/test/lux/math/number/i64.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/test/lux/math/number/i64.lux')
-rw-r--r--stdlib/source/test/lux/math/number/i64.lux10
1 files changed, 8 insertions, 2 deletions
diff --git a/stdlib/source/test/lux/math/number/i64.lux b/stdlib/source/test/lux/math/number/i64.lux
index 32c5a1717..d03f3c6b3 100644
--- a/stdlib/source/test/lux/math/number/i64.lux
+++ b/stdlib/source/test/lux/math/number/i64.lux
@@ -171,7 +171,10 @@
(_.for [.I64])
(do [! random.monad]
[pattern random.nat
- idx (of ! each (n.% /.width) random.nat)]
+ idx (of ! each (n.% /.width) random.nat)
+
+ left random.nat
+ right random.nat]
(all _.and
(_.coverage [/.width /.bits_per_byte /.bytes_per_i64]
(and (n.= /.bytes_per_i64
@@ -201,7 +204,10 @@
(/.not pattern)))
(/#= /.false
(/.xor pattern
- pattern))))
+ pattern))
+ (/#= (/.xor left right)
+ (/.and (/.or left right)
+ (/.not (/.and left right))))))
(_.coverage [/.ones]
(let [zero&one!
(if (/.one? idx pattern)