aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/test/lux/data
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/test/lux/data.lux3
-rw-r--r--stdlib/source/test/lux/data/any.lux33
-rw-r--r--stdlib/source/test/lux/data/collection/array.lux6
-rw-r--r--stdlib/source/test/lux/data/collection/list.lux7
-rw-r--r--stdlib/source/test/lux/data/collection/sequence.lux7
-rw-r--r--stdlib/source/test/lux/data/collection/tree.lux7
6 files changed, 51 insertions, 12 deletions
diff --git a/stdlib/source/test/lux/data.lux b/stdlib/source/test/lux/data.lux
index ec160d576..789500e62 100644
--- a/stdlib/source/test/lux/data.lux
+++ b/stdlib/source/test/lux/data.lux
@@ -8,6 +8,7 @@
[test
["_" property (.only Test)]]]]
["[0]" /
+ ["[1][0]" any]
["[1][0]" binary]
["[1][0]" bit]
["[1][0]" color
@@ -68,6 +69,8 @@
Test
... TODO: Inline ASAP
(all _.and
+ /any.test
+
(!bundle test/0)
(!bundle test/1)
(!bundle test/2)
diff --git a/stdlib/source/test/lux/data/any.lux b/stdlib/source/test/lux/data/any.lux
new file mode 100644
index 000000000..1a8c31c44
--- /dev/null
+++ b/stdlib/source/test/lux/data/any.lux
@@ -0,0 +1,33 @@
+(.require
+ [library
+ [lux (.except)
+ [abstract
+ [monad (.only do)]
+ [\\specification
+ ["[0]S" equivalence]
+ ["[0]S" hash]]]
+ [math
+ ["[0]" random (.only Random) (.use "[1]#[0]" monad)]]
+ [test
+ ["_" property (.only Test)]]]]
+ [\\library
+ ["[0]" /]])
+
+(def .public random
+ (Random Any)
+ (random#in /.any))
+
+(def .public test
+ Test
+ (<| (_.covering /._)
+ (do [! random.monad]
+ [])
+ (all _.and
+ (_.for [/.equivalence]
+ (equivalenceS.spec /.equivalence ..random))
+ (_.for [/.hash]
+ (hashS.spec /.hash ..random))
+
+ (_.coverage [/.any]
+ (same? [] /.any))
+ )))
diff --git a/stdlib/source/test/lux/data/collection/array.lux b/stdlib/source/test/lux/data/collection/array.lux
index e2e17aa03..35b85392a 100644
--- a/stdlib/source/test/lux/data/collection/array.lux
+++ b/stdlib/source/test/lux/data/collection/array.lux
@@ -7,7 +7,7 @@
["[0]" functor
["[1]T" \\test (.only Injection)]]
["[0]" mix (.only Mix)
- ["$[1]" \\specification]]
+ ["[1]T" \\test]]
["[0]" monoid
["[1]T" \\test]]
[\\specification
@@ -51,7 +51,7 @@
(_.for [/.functor]
(functorT.spec ..injection /.equivalence /.functor))
(_.for [/.mix]
- ($mix.spec ..injection /.equivalence /.mix))
+ (mixT.spec ..injection /.equivalence /.mix))
)))
(def search
@@ -145,7 +145,7 @@
(function (_ $ it)
(!.each $ it))))
(_.for [!.mix]
- ($mix.spec ..injection /.equivalence
+ (mixT.spec ..injection /.equivalence
(is (Mix !.Array)
(function (_ $ init it)
(!.mix (function (_ index item output)
diff --git a/stdlib/source/test/lux/data/collection/list.lux b/stdlib/source/test/lux/data/collection/list.lux
index b73b76016..460565e5f 100644
--- a/stdlib/source/test/lux/data/collection/list.lux
+++ b/stdlib/source/test/lux/data/collection/list.lux
@@ -11,10 +11,11 @@
["[1]T" \\test]]
["[0]" monoid
["[1]T" \\test]]
+ ["[0]" mix
+ ["[1]T" \\test]]
[\\specification
["$[0]" equivalence]
- ["$[0]" hash]
- ["$[0]" mix]]]
+ ["$[0]" hash]]]
[control
["[0]" pipe]
["[0]" io]
@@ -61,7 +62,7 @@
(_.for [/.monoid]
(monoidT.spec (/.equivalence n.equivalence) /.monoid ..random))
(_.for [/.mix]
- ($mix.spec /#in /.equivalence /.mix))
+ (mixT.spec /#in /.equivalence /.mix))
(_.for [/.functor]
(functorT.spec /#in /.equivalence /.functor))
(_.for [/.apply]
diff --git a/stdlib/source/test/lux/data/collection/sequence.lux b/stdlib/source/test/lux/data/collection/sequence.lux
index ee463e2f7..80f6d06fe 100644
--- a/stdlib/source/test/lux/data/collection/sequence.lux
+++ b/stdlib/source/test/lux/data/collection/sequence.lux
@@ -10,9 +10,10 @@
["[1]T" \\test]]
["[0]" monoid
["[1]T" \\test]]
+ ["[0]" mix
+ ["[1]T" \\test]]
[\\specification
- ["$[0]" equivalence]
- ["$[0]" mix]]]
+ ["$[0]" equivalence]]]
[control
["[0]" try (.only Try)]
["[0]" exception]]
@@ -41,7 +42,7 @@
(_.for [/.monoid]
(monoidT.spec (/.equivalence n.equivalence) /.monoid (random.sequence size random.nat)))
(_.for [/.mix]
- ($mix.spec /#in /.equivalence /.mix))
+ (mixT.spec /#in /.equivalence /.mix))
(_.for [/.functor]
(functorT.spec /#in /.equivalence /.functor))
(_.for [/.apply]
diff --git a/stdlib/source/test/lux/data/collection/tree.lux b/stdlib/source/test/lux/data/collection/tree.lux
index 66cdcfd6f..ee6d5a83d 100644
--- a/stdlib/source/test/lux/data/collection/tree.lux
+++ b/stdlib/source/test/lux/data/collection/tree.lux
@@ -5,9 +5,10 @@
["[0]" monad (.only do)]
["[0]" functor
["[1]T" \\test (.only Injection Comparison)]]
+ ["[0]" mix
+ ["[1]T" \\test]]
[\\specification
- ["$[0]" equivalence]
- ["$[0]" mix]]]
+ ["$[0]" equivalence]]]
[control
["//" parser]
["[0]" try]
@@ -209,7 +210,7 @@
(of random.monad each product.right)
($equivalence.spec (/.equivalence n.equivalence))))
(_.for [/.mix]
- ($mix.spec /.leaf /.equivalence /.mix))
+ (mixT.spec /.leaf /.equivalence /.mix))
(_.for [/.functor]
(functorT.spec /.leaf /.equivalence /.functor))