diff options
Diffstat (limited to '')
124 files changed, 244 insertions, 130 deletions
diff --git a/stdlib/source/test/aedifex/artifact.lux b/stdlib/source/test/aedifex/artifact.lux index 6a1021b4c..6afbbf27c 100644 --- a/stdlib/source/test/aedifex/artifact.lux +++ b/stdlib/source/test/aedifex/artifact.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] [hash (#+ Hash)] - [\\spec + [\\specification ["$." equivalence]]] [control [concurrency diff --git a/stdlib/source/test/aedifex/artifact/snapshot.lux b/stdlib/source/test/aedifex/artifact/snapshot.lux index 94d98cf22..5f29620c9 100644 --- a/stdlib/source/test/aedifex/artifact/snapshot.lux +++ b/stdlib/source/test/aedifex/artifact/snapshot.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/artifact/snapshot/build.lux b/stdlib/source/test/aedifex/artifact/snapshot/build.lux index 731219b91..8b0be9f1d 100644 --- a/stdlib/source/test/aedifex/artifact/snapshot/build.lux +++ b/stdlib/source/test/aedifex/artifact/snapshot/build.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/artifact/snapshot/stamp.lux b/stdlib/source/test/aedifex/artifact/snapshot/stamp.lux index ba0c9f368..00be1c227 100644 --- a/stdlib/source/test/aedifex/artifact/snapshot/stamp.lux +++ b/stdlib/source/test/aedifex/artifact/snapshot/stamp.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/artifact/snapshot/time.lux b/stdlib/source/test/aedifex/artifact/snapshot/time.lux index 9cfe28fb0..820214cba 100644 --- a/stdlib/source/test/aedifex/artifact/snapshot/time.lux +++ b/stdlib/source/test/aedifex/artifact/snapshot/time.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/artifact/snapshot/version.lux b/stdlib/source/test/aedifex/artifact/snapshot/version.lux index f0fc26321..a4a090246 100644 --- a/stdlib/source/test/aedifex/artifact/snapshot/version.lux +++ b/stdlib/source/test/aedifex/artifact/snapshot/version.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/artifact/snapshot/version/value.lux b/stdlib/source/test/aedifex/artifact/snapshot/version/value.lux index dcb23646d..c55b71cd1 100644 --- a/stdlib/source/test/aedifex/artifact/snapshot/version/value.lux +++ b/stdlib/source/test/aedifex/artifact/snapshot/version/value.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/artifact/time.lux b/stdlib/source/test/aedifex/artifact/time.lux index f4fc185be..f69566096 100644 --- a/stdlib/source/test/aedifex/artifact/time.lux +++ b/stdlib/source/test/aedifex/artifact/time.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/artifact/versioning.lux b/stdlib/source/test/aedifex/artifact/versioning.lux index 9efdca98a..a16794e98 100644 --- a/stdlib/source/test/aedifex/artifact/versioning.lux +++ b/stdlib/source/test/aedifex/artifact/versioning.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/cli.lux b/stdlib/source/test/aedifex/cli.lux index d2eed16d7..71ea72b8c 100644 --- a/stdlib/source/test/aedifex/cli.lux +++ b/stdlib/source/test/aedifex/cli.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control [pipe (#+ case>)] diff --git a/stdlib/source/test/aedifex/dependency.lux b/stdlib/source/test/aedifex/dependency.lux index d12434d1f..7ce95f716 100644 --- a/stdlib/source/test/aedifex/dependency.lux +++ b/stdlib/source/test/aedifex/dependency.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [math ["." random (#+ Random)]]]] diff --git a/stdlib/source/test/aedifex/dependency/resolution.lux b/stdlib/source/test/aedifex/dependency/resolution.lux index 638199af3..deb74abcd 100644 --- a/stdlib/source/test/aedifex/dependency/resolution.lux +++ b/stdlib/source/test/aedifex/dependency/resolution.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] ["." predicate] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try] diff --git a/stdlib/source/test/aedifex/dependency/status.lux b/stdlib/source/test/aedifex/dependency/status.lux index a3ac5df4e..f886c031f 100644 --- a/stdlib/source/test/aedifex/dependency/status.lux +++ b/stdlib/source/test/aedifex/dependency/status.lux @@ -3,7 +3,7 @@ [lux #* ["_" test (#+ Test)] [abstract - [\\spec + [\\specification ["$." equivalence]]] [math ["." random (#+ Random) ("#\." monad)]]]] diff --git a/stdlib/source/test/aedifex/hash.lux b/stdlib/source/test/aedifex/hash.lux index 9064dac8b..524110c35 100644 --- a/stdlib/source/test/aedifex/hash.lux +++ b/stdlib/source/test/aedifex/hash.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." codec]]] [control diff --git a/stdlib/source/test/aedifex/metadata/artifact.lux b/stdlib/source/test/aedifex/metadata/artifact.lux index b84eca173..5e5f67bec 100644 --- a/stdlib/source/test/aedifex/metadata/artifact.lux +++ b/stdlib/source/test/aedifex/metadata/artifact.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/metadata/snapshot.lux b/stdlib/source/test/aedifex/metadata/snapshot.lux index d34eb60a9..5a821c452 100644 --- a/stdlib/source/test/aedifex/metadata/snapshot.lux +++ b/stdlib/source/test/aedifex/metadata/snapshot.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/aedifex/package.lux b/stdlib/source/test/aedifex/package.lux index ef23f35ce..55bca8ce3 100644 --- a/stdlib/source/test/aedifex/package.lux +++ b/stdlib/source/test/aedifex/package.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try] diff --git a/stdlib/source/test/aedifex/profile.lux b/stdlib/source/test/aedifex/profile.lux index 418756ffd..c593f1706 100644 --- a/stdlib/source/test/aedifex/profile.lux +++ b/stdlib/source/test/aedifex/profile.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] [hash (#+ Hash)] - [\\spec + [\\specification ["$." equivalence] ["$." monoid]]] [control diff --git a/stdlib/source/test/aedifex/project.lux b/stdlib/source/test/aedifex/project.lux index e1b4b051a..bdeee7993 100644 --- a/stdlib/source/test/aedifex/project.lux +++ b/stdlib/source/test/aedifex/project.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." monoid]]] [control diff --git a/stdlib/source/test/aedifex/repository.lux b/stdlib/source/test/aedifex/repository.lux index c86f3d52d..67cc4c10f 100644 --- a/stdlib/source/test/aedifex/repository.lux +++ b/stdlib/source/test/aedifex/repository.lux @@ -29,7 +29,7 @@ ["#." remote] [// ["@." artifact]]] - [\\spec + [\\specification ["$." /]] [\\program ["." / diff --git a/stdlib/source/test/aedifex/repository/identity.lux b/stdlib/source/test/aedifex/repository/identity.lux index 061bd9de0..74daecb4d 100644 --- a/stdlib/source/test/aedifex/repository/identity.lux +++ b/stdlib/source/test/aedifex/repository/identity.lux @@ -3,7 +3,7 @@ [lux #* ["_" test (#+ Test)] [abstract - [\\spec + [\\specification ["$." equivalence]]] [math ["." random (#+ Random)]]]] diff --git a/stdlib/source/test/aedifex/repository/origin.lux b/stdlib/source/test/aedifex/repository/origin.lux index 6531726fe..daf8e8667 100644 --- a/stdlib/source/test/aedifex/repository/origin.lux +++ b/stdlib/source/test/aedifex/repository/origin.lux @@ -3,7 +3,7 @@ [lux #* ["_" test (#+ Test)] [abstract - [\\spec + [\\specification ["$." equivalence]]] [math ["." random (#+ Random)]]]] diff --git a/stdlib/source/test/lux/abstract/comonad/cofree.lux b/stdlib/source/test/lux/abstract/comonad/cofree.lux index 82647f79d..d44c592d0 100644 --- a/stdlib/source/test/lux/abstract/comonad/cofree.lux +++ b/stdlib/source/test/lux/abstract/comonad/cofree.lux @@ -5,7 +5,7 @@ [abstract [functor (#+ Functor)] [comonad (#+ CoMonad)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." comonad]]] [control diff --git a/stdlib/source/test/lux/abstract/equivalence.lux b/stdlib/source/test/lux/abstract/equivalence.lux index 5b0bfced8..753494f48 100644 --- a/stdlib/source/test/lux/abstract/equivalence.lux +++ b/stdlib/source/test/lux/abstract/equivalence.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification [functor ["$." contravariant]]]] [data diff --git a/stdlib/source/test/lux/abstract/hash.lux b/stdlib/source/test/lux/abstract/hash.lux index 4c9bc67f6..894860935 100644 --- a/stdlib/source/test/lux/abstract/hash.lux +++ b/stdlib/source/test/lux/abstract/hash.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification [functor ["$." contravariant]]]] [data diff --git a/stdlib/source/test/lux/abstract/interval.lux b/stdlib/source/test/lux/abstract/interval.lux index 718663b4b..f5dd14646 100644 --- a/stdlib/source/test/lux/abstract/interval.lux +++ b/stdlib/source/test/lux/abstract/interval.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] ["." order] - [\\spec + [\\specification ["$." equivalence]]] [control [pipe (#+ case>)]] diff --git a/stdlib/source/test/lux/abstract/monad/free.lux b/stdlib/source/test/lux/abstract/monad/free.lux index a56c01fd5..2a5a562f2 100644 --- a/stdlib/source/test/lux/abstract/monad/free.lux +++ b/stdlib/source/test/lux/abstract/monad/free.lux @@ -6,7 +6,7 @@ [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/abstract/order.lux b/stdlib/source/test/lux/abstract/order.lux index 2173691de..e9ced25ce 100644 --- a/stdlib/source/test/lux/abstract/order.lux +++ b/stdlib/source/test/lux/abstract/order.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification [functor ["$." contravariant]]]] [data diff --git a/stdlib/source/test/lux/abstract/predicate.lux b/stdlib/source/test/lux/abstract/predicate.lux index 0535b5802..197953c49 100644 --- a/stdlib/source/test/lux/abstract/predicate.lux +++ b/stdlib/source/test/lux/abstract/predicate.lux @@ -5,7 +5,7 @@ [abstract [equivalence (#+ Equivalence)] [monad (#+ do)] - [\\spec + [\\specification ["$." monoid] [functor ["$." contravariant]]]] diff --git a/stdlib/source/test/lux/control/concurrency/frp.lux b/stdlib/source/test/lux/control/concurrency/frp.lux index 45d626600..c23428089 100644 --- a/stdlib/source/test/lux/control/concurrency/frp.lux +++ b/stdlib/source/test/lux/control/concurrency/frp.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/concurrency/promise.lux b/stdlib/source/test/lux/control/concurrency/promise.lux index 6b6b0ac14..be2655334 100644 --- a/stdlib/source/test/lux/control/concurrency/promise.lux +++ b/stdlib/source/test/lux/control/concurrency/promise.lux @@ -5,7 +5,7 @@ ["@" target] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/concurrency/stm.lux b/stdlib/source/test/lux/control/concurrency/stm.lux index 6667274b5..23248f387 100644 --- a/stdlib/source/test/lux/control/concurrency/stm.lux +++ b/stdlib/source/test/lux/control/concurrency/stm.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract ["." monad (#+ Monad do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/continuation.lux b/stdlib/source/test/lux/control/continuation.lux index bec8160c1..d13a3ee78 100644 --- a/stdlib/source/test/lux/control/continuation.lux +++ b/stdlib/source/test/lux/control/continuation.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/function.lux b/stdlib/source/test/lux/control/function.lux index 8669e4220..46836db21 100644 --- a/stdlib/source/test/lux/control/function.lux +++ b/stdlib/source/test/lux/control/function.lux @@ -5,7 +5,7 @@ [abstract [equivalence (#+ Equivalence)] [monad (#+ do)] - [\\spec + [\\specification ["$." monoid]]] [data ["." text ("#!." equivalence)]] diff --git a/stdlib/source/test/lux/control/function/mixin.lux b/stdlib/source/test/lux/control/function/mixin.lux index a74ca04d4..339216526 100644 --- a/stdlib/source/test/lux/control/function/mixin.lux +++ b/stdlib/source/test/lux/control/function/mixin.lux @@ -6,7 +6,7 @@ [equivalence (#+ Equivalence)] [predicate (#+ Predicate)] [monad (#+ do)] - [\\spec + [\\specification ["$." monoid]]] [control ["." state (#+ State)]] diff --git a/stdlib/source/test/lux/control/io.lux b/stdlib/source/test/lux/control/io.lux index 1db7423e8..e101459c2 100644 --- a/stdlib/source/test/lux/control/io.lux +++ b/stdlib/source/test/lux/control/io.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/parser.lux b/stdlib/source/test/lux/control/parser.lux index ff8520b10..e9696fef8 100644 --- a/stdlib/source/test/lux/control/parser.lux +++ b/stdlib/source/test/lux/control/parser.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] [equivalence (#+ Equivalence)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/reader.lux b/stdlib/source/test/lux/control/reader.lux index b0edaa401..47ddbd8b2 100644 --- a/stdlib/source/test/lux/control/reader.lux +++ b/stdlib/source/test/lux/control/reader.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/region.lux b/stdlib/source/test/lux/control/region.lux index 2d2c5e1f9..fceb62bc7 100644 --- a/stdlib/source/test/lux/control/region.lux +++ b/stdlib/source/test/lux/control/region.lux @@ -9,7 +9,7 @@ [apply (#+ Apply)] ["." monad (#+ Monad do)] ["." enum] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/security/policy.lux b/stdlib/source/test/lux/control/security/policy.lux index 87beb9a3a..577439ab5 100644 --- a/stdlib/source/test/lux/control/security/policy.lux +++ b/stdlib/source/test/lux/control/security/policy.lux @@ -5,7 +5,7 @@ [abstract [hash (#+ Hash)] [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/state.lux b/stdlib/source/test/lux/control/state.lux index 2c1541dbf..53622408d 100644 --- a/stdlib/source/test/lux/control/state.lux +++ b/stdlib/source/test/lux/control/state.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/thread.lux b/stdlib/source/test/lux/control/thread.lux index f3ad379dd..43d755145 100644 --- a/stdlib/source/test/lux/control/thread.lux +++ b/stdlib/source/test/lux/control/thread.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/control/try.lux b/stdlib/source/test/lux/control/try.lux index 9f131cffd..0872db2da 100644 --- a/stdlib/source/test/lux/control/try.lux +++ b/stdlib/source/test/lux/control/try.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad] diff --git a/stdlib/source/test/lux/control/writer.lux b/stdlib/source/test/lux/control/writer.lux index 8d440ddd0..51f2ea36d 100644 --- a/stdlib/source/test/lux/control/writer.lux +++ b/stdlib/source/test/lux/control/writer.lux @@ -6,7 +6,7 @@ [equivalence (#+ Equivalence)] [monoid (#+ Monoid)] [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/data/binary.lux b/stdlib/source/test/lux/data/binary.lux index 347d9080b..879c0c722 100644 --- a/stdlib/source/test/lux/data/binary.lux +++ b/stdlib/source/test/lux/data/binary.lux @@ -5,7 +5,7 @@ [abstract ["." monad (#+ do)] ["." enum] - [\\spec + [\\specification ["$." equivalence] ["$." monoid]]] [control diff --git a/stdlib/source/test/lux/data/bit.lux b/stdlib/source/test/lux/data/bit.lux index 499b32779..fda210668 100644 --- a/stdlib/source/test/lux/data/bit.lux +++ b/stdlib/source/test/lux/data/bit.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." monoid] diff --git a/stdlib/source/test/lux/data/collection/array.lux b/stdlib/source/test/lux/data/collection/array.lux index 20d554bea..ccf1d3484 100644 --- a/stdlib/source/test/lux/data/collection/array.lux +++ b/stdlib/source/test/lux/data/collection/array.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." monoid] ["$." fold] diff --git a/stdlib/source/test/lux/data/collection/bits.lux b/stdlib/source/test/lux/data/collection/bits.lux index f505b0fce..bc59e6b34 100644 --- a/stdlib/source/test/lux/data/collection/bits.lux +++ b/stdlib/source/test/lux/data/collection/bits.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] ["." predicate] - [\\spec + [\\specification ["$." equivalence]]] [math ["." random (#+ Random)] diff --git a/stdlib/source/test/lux/data/collection/dictionary.lux b/stdlib/source/test/lux/data/collection/dictionary.lux index c28ff6f51..c38df7030 100644 --- a/stdlib/source/test/lux/data/collection/dictionary.lux +++ b/stdlib/source/test/lux/data/collection/dictionary.lux @@ -5,7 +5,7 @@ [abstract [hash (#+ Hash)] [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." functor (#+ Injection)]]] [control diff --git a/stdlib/source/test/lux/data/collection/dictionary/ordered.lux b/stdlib/source/test/lux/data/collection/dictionary/ordered.lux index 66d8098d3..bfa0175bb 100644 --- a/stdlib/source/test/lux/data/collection/dictionary/ordered.lux +++ b/stdlib/source/test/lux/data/collection/dictionary/ordered.lux @@ -6,7 +6,7 @@ [monad (#+ do)] [equivalence (#+ Equivalence)] [order (#+ Order)] - [\\spec + [\\specification ["$." equivalence]]] [data ["." product] diff --git a/stdlib/source/test/lux/data/collection/dictionary/plist.lux b/stdlib/source/test/lux/data/collection/dictionary/plist.lux index 3d24c3943..450d3b733 100644 --- a/stdlib/source/test/lux/data/collection/dictionary/plist.lux +++ b/stdlib/source/test/lux/data/collection/dictionary/plist.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [data ["." bit ("#\." equivalence)] diff --git a/stdlib/source/test/lux/data/collection/list.lux b/stdlib/source/test/lux/data/collection/list.lux index c46ccb681..5f1befd45 100644 --- a/stdlib/source/test/lux/data/collection/list.lux +++ b/stdlib/source/test/lux/data/collection/list.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] ["." enum] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." monoid] diff --git a/stdlib/source/test/lux/data/collection/queue.lux b/stdlib/source/test/lux/data/collection/queue.lux index 93dd8828f..3181c9bcc 100644 --- a/stdlib/source/test/lux/data/collection/queue.lux +++ b/stdlib/source/test/lux/data/collection/queue.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." functor (#+ Injection)]]] [data diff --git a/stdlib/source/test/lux/data/collection/row.lux b/stdlib/source/test/lux/data/collection/row.lux index 6f858efe6..6b7b09fdc 100644 --- a/stdlib/source/test/lux/data/collection/row.lux +++ b/stdlib/source/test/lux/data/collection/row.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." monoid] ["$." fold] diff --git a/stdlib/source/test/lux/data/collection/sequence.lux b/stdlib/source/test/lux/data/collection/sequence.lux index bbac12c34..8a8adf0a0 100644 --- a/stdlib/source/test/lux/data/collection/sequence.lux +++ b/stdlib/source/test/lux/data/collection/sequence.lux @@ -6,7 +6,7 @@ [monad (#+ do)] [equivalence (#+ Equivalence)] ["." enum] - [\\spec + [\\specification ["$." functor] ["$." comonad]]] [data diff --git a/stdlib/source/test/lux/data/collection/set.lux b/stdlib/source/test/lux/data/collection/set.lux index e543dce57..021df152d 100644 --- a/stdlib/source/test/lux/data/collection/set.lux +++ b/stdlib/source/test/lux/data/collection/set.lux @@ -5,7 +5,7 @@ [abstract [hash (#+ Hash)] [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." monoid]]] diff --git a/stdlib/source/test/lux/data/collection/set/multi.lux b/stdlib/source/test/lux/data/collection/set/multi.lux index a6f95a3f0..1fd15a14f 100644 --- a/stdlib/source/test/lux/data/collection/set/multi.lux +++ b/stdlib/source/test/lux/data/collection/set/multi.lux @@ -6,7 +6,7 @@ [hash (#+ Hash)] [monad (#+ do)] ["." predicate] - [\\spec + [\\specification ["$." equivalence] ["$." hash]]] [data diff --git a/stdlib/source/test/lux/data/collection/set/ordered.lux b/stdlib/source/test/lux/data/collection/set/ordered.lux index 0a6b441b7..dd3ba8802 100644 --- a/stdlib/source/test/lux/data/collection/set/ordered.lux +++ b/stdlib/source/test/lux/data/collection/set/ordered.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] [order (#+ Order)] - [\\spec + [\\specification ["$." equivalence]]] [data ["." bit ("#\." equivalence)] diff --git a/stdlib/source/test/lux/data/collection/stack.lux b/stdlib/source/test/lux/data/collection/stack.lux index e671b3cee..c007ee050 100644 --- a/stdlib/source/test/lux/data/collection/stack.lux +++ b/stdlib/source/test/lux/data/collection/stack.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." functor (#+ Injection)]]] [data diff --git a/stdlib/source/test/lux/data/collection/tree.lux b/stdlib/source/test/lux/data/collection/tree.lux index ed27499c3..ff281844a 100644 --- a/stdlib/source/test/lux/data/collection/tree.lux +++ b/stdlib/source/test/lux/data/collection/tree.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract ["." monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." fold] ["$." functor]]] diff --git a/stdlib/source/test/lux/data/collection/tree/zipper.lux b/stdlib/source/test/lux/data/collection/tree/zipper.lux index b45e96213..06e53f225 100644 --- a/stdlib/source/test/lux/data/collection/tree/zipper.lux +++ b/stdlib/source/test/lux/data/collection/tree/zipper.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." functor] ["$." comonad]]] diff --git a/stdlib/source/test/lux/data/color.lux b/stdlib/source/test/lux/data/color.lux index b218a15ed..578771b59 100644 --- a/stdlib/source/test/lux/data/color.lux +++ b/stdlib/source/test/lux/data/color.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." monoid]]] diff --git a/stdlib/source/test/lux/data/format/binary.lux b/stdlib/source/test/lux/data/format/binary.lux index 3457833ae..547f90f63 100644 --- a/stdlib/source/test/lux/data/format/binary.lux +++ b/stdlib/source/test/lux/data/format/binary.lux @@ -5,7 +5,7 @@ [abstract [equivalence (#+ Equivalence)] [monad (#+ do)] - [\\spec + [\\specification ["$." monoid]]] [data ["." binary ("#\." equivalence)]] diff --git a/stdlib/source/test/lux/data/format/json.lux b/stdlib/source/test/lux/data/format/json.lux index 8fa74ed9e..9bd1c09b5 100644 --- a/stdlib/source/test/lux/data/format/json.lux +++ b/stdlib/source/test/lux/data/format/json.lux @@ -5,7 +5,7 @@ ["." meta] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." codec]]] [control diff --git a/stdlib/source/test/lux/data/format/xml.lux b/stdlib/source/test/lux/data/format/xml.lux index 5e4585d7f..7c9267b16 100644 --- a/stdlib/source/test/lux/data/format/xml.lux +++ b/stdlib/source/test/lux/data/format/xml.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ Monad do)] - [\\spec + [\\specification ["$." equivalence] ["$." codec]]] [control diff --git a/stdlib/source/test/lux/data/identity.lux b/stdlib/source/test/lux/data/identity.lux index c1359fd42..030d441b1 100644 --- a/stdlib/source/test/lux/data/identity.lux +++ b/stdlib/source/test/lux/data/identity.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad] diff --git a/stdlib/source/test/lux/data/lazy.lux b/stdlib/source/test/lux/data/lazy.lux index 9972de30d..0c93ae612 100644 --- a/stdlib/source/test/lux/data/lazy.lux +++ b/stdlib/source/test/lux/data/lazy.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad] diff --git a/stdlib/source/test/lux/data/maybe.lux b/stdlib/source/test/lux/data/maybe.lux index 51388c7a2..4f5accd9b 100644 --- a/stdlib/source/test/lux/data/maybe.lux +++ b/stdlib/source/test/lux/data/maybe.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." monoid] diff --git a/stdlib/source/test/lux/data/name.lux b/stdlib/source/test/lux/data/name.lux index 958d236bf..e6f8b46c0 100644 --- a/stdlib/source/test/lux/data/name.lux +++ b/stdlib/source/test/lux/data/name.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." order] diff --git a/stdlib/source/test/lux/data/product.lux b/stdlib/source/test/lux/data/product.lux index ed086d66a..fd361c2f6 100644 --- a/stdlib/source/test/lux/data/product.lux +++ b/stdlib/source/test/lux/data/product.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [math ["." random] diff --git a/stdlib/source/test/lux/data/sum.lux b/stdlib/source/test/lux/data/sum.lux index b06d4ea79..cff19b801 100644 --- a/stdlib/source/test/lux/data/sum.lux +++ b/stdlib/source/test/lux/data/sum.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control pipe] diff --git a/stdlib/source/test/lux/data/text.lux b/stdlib/source/test/lux/data/text.lux index 5b13a9076..73696ae46 100644 --- a/stdlib/source/test/lux/data/text.lux +++ b/stdlib/source/test/lux/data/text.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." order] diff --git a/stdlib/source/test/lux/data/text/encoding.lux b/stdlib/source/test/lux/data/text/encoding.lux index 53bc78299..ea8605b82 100644 --- a/stdlib/source/test/lux/data/text/encoding.lux +++ b/stdlib/source/test/lux/data/text/encoding.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." codec]]] [control ["." try]] diff --git a/stdlib/source/test/lux/data/text/encoding/utf8.lux b/stdlib/source/test/lux/data/text/encoding/utf8.lux index 222e6e19b..a537a0277 100644 --- a/stdlib/source/test/lux/data/text/encoding/utf8.lux +++ b/stdlib/source/test/lux/data/text/encoding/utf8.lux @@ -3,7 +3,7 @@ [lux #* ["_" test (#+ Test)] [abstract - [\\spec + [\\specification ["$." codec]]] [data ["." text]] diff --git a/stdlib/source/test/lux/data/text/format.lux b/stdlib/source/test/lux/data/text/format.lux index f35683b33..e7a34a90c 100644 --- a/stdlib/source/test/lux/data/text/format.lux +++ b/stdlib/source/test/lux/data/text/format.lux @@ -6,7 +6,7 @@ [monad (#+ do)] [equivalence (#+ Equivalence)] [functor - [\\spec + [\\specification ["$." contravariant]]]] [control ["." try]] diff --git a/stdlib/source/test/lux/data/text/unicode/block.lux b/stdlib/source/test/lux/data/text/unicode/block.lux index e4affc97a..3b1f3866c 100644 --- a/stdlib/source/test/lux/data/text/unicode/block.lux +++ b/stdlib/source/test/lux/data/text/unicode/block.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." monoid]]] diff --git a/stdlib/source/test/lux/data/text/unicode/set.lux b/stdlib/source/test/lux/data/text/unicode/set.lux index 3ef15de08..e70816efe 100644 --- a/stdlib/source/test/lux/data/text/unicode/set.lux +++ b/stdlib/source/test/lux/data/text/unicode/set.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [data ["." product] diff --git a/stdlib/source/test/lux/ffi.lua.lux b/stdlib/source/test/lux/ffi.lua.lux index c8d4ea6d5..a1f181edc 100644 --- a/stdlib/source/test/lux/ffi.lua.lux +++ b/stdlib/source/test/lux/ffi.lua.lux @@ -5,21 +5,57 @@ [abstract [monad (#+ do)]] [control - ["." try]] - [data - ["." text ("#\." equivalence)]] + ["." io]] [math - ["." random (#+ Random)] + ["." random] [number - ["." nat] - ["." frac]]]]] + ["i" int]]]]] [\\library ["." /]]) +(/.import: (os/getenv [/.String] #io #? /.String)) + (def: #export test Test (do {! random.monad} - [] + [boolean random.bit + integer random.int + float random.frac + string (random.ascii/lower 1)] (<| (_.covering /._) - (_.test "TBD" - true)))) + (`` ($_ _.and + (~~ (template [<type> <sample>] + [(_.cover [<type>] + (exec + (: <type> <sample>) + true))] + + [/.Boolean boolean] + [/.Integer integer] + [/.Float float] + [/.String string] + )) + (_.for [/.Object] + ($_ _.and + (~~ (template [<type>] + [(_.cover [<type>] + (exec + (|> [] + (:as <type>) + (: (Ex [a] (/.Object a)))) + true))] + + [/.Nil] + [/.Table] + )))) + (_.cover [/.Function /.closure] + (exec + (|> (/.closure [input/0] input/0) + (: /.Function) + (: (Ex [a] (/.Object a)))) + true)) + (_.cover [/.import:] + (case (io.run (..os/getenv string)) + (#.Some _) true + #.None true)) + ))))) diff --git a/stdlib/source/test/lux/locale.lux b/stdlib/source/test/lux/locale.lux index 54b29cff7..3bb0be6ab 100644 --- a/stdlib/source/test/lux/locale.lux +++ b/stdlib/source/test/lux/locale.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash]]] [math diff --git a/stdlib/source/test/lux/locale/language.lux b/stdlib/source/test/lux/locale/language.lux index 39bc71aae..19bdd5f25 100644 --- a/stdlib/source/test/lux/locale/language.lux +++ b/stdlib/source/test/lux/locale/language.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] [hash (#+ Hash)] - [\\spec + [\\specification ["$." hash]]] [data ["." maybe] diff --git a/stdlib/source/test/lux/locale/territory.lux b/stdlib/source/test/lux/locale/territory.lux index fadbe2890..0d2b463c6 100644 --- a/stdlib/source/test/lux/locale/territory.lux +++ b/stdlib/source/test/lux/locale/territory.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] [hash (#+ Hash)] - [\\spec + [\\specification ["$." hash]]] [data ["." maybe] diff --git a/stdlib/source/test/lux/macro/code.lux b/stdlib/source/test/lux/macro/code.lux index 576ccb54a..8a037cc08 100644 --- a/stdlib/source/test/lux/macro/code.lux +++ b/stdlib/source/test/lux/macro/code.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try (#+ Try)]] diff --git a/stdlib/source/test/lux/macro/poly/equivalence.lux b/stdlib/source/test/lux/macro/poly/equivalence.lux index c8cd7c7bf..6682c2375 100644 --- a/stdlib/source/test/lux/macro/poly/equivalence.lux +++ b/stdlib/source/test/lux/macro/poly/equivalence.lux @@ -8,7 +8,7 @@ [equivalence (#+ Equivalence) [\\poly ["." /]]] - [\\spec + [\\specification ["$." equivalence]]] [data ["." bit] diff --git a/stdlib/source/test/lux/macro/poly/json.lux b/stdlib/source/test/lux/macro/poly/json.lux index e369dac92..4137ad271 100644 --- a/stdlib/source/test/lux/macro/poly/json.lux +++ b/stdlib/source/test/lux/macro/poly/json.lux @@ -8,7 +8,7 @@ [monad (#+ do)] ["." equivalence (#+ Equivalence) ["poly/#" \\poly]] - [\\spec + [\\specification ["$." equivalence] ["$." codec]]] [control diff --git a/stdlib/source/test/lux/macro/syntax/annotations.lux b/stdlib/source/test/lux/macro/syntax/annotations.lux index 00d71c949..cd6396535 100644 --- a/stdlib/source/test/lux/macro/syntax/annotations.lux +++ b/stdlib/source/test/lux/macro/syntax/annotations.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try] diff --git a/stdlib/source/test/lux/macro/syntax/check.lux b/stdlib/source/test/lux/macro/syntax/check.lux index 626471c73..36ad565a2 100644 --- a/stdlib/source/test/lux/macro/syntax/check.lux +++ b/stdlib/source/test/lux/macro/syntax/check.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try] diff --git a/stdlib/source/test/lux/macro/syntax/declaration.lux b/stdlib/source/test/lux/macro/syntax/declaration.lux index 761ba87cc..0d1e61874 100644 --- a/stdlib/source/test/lux/macro/syntax/declaration.lux +++ b/stdlib/source/test/lux/macro/syntax/declaration.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try] diff --git a/stdlib/source/test/lux/macro/syntax/definition.lux b/stdlib/source/test/lux/macro/syntax/definition.lux index c98b1e853..e6acc2847 100644 --- a/stdlib/source/test/lux/macro/syntax/definition.lux +++ b/stdlib/source/test/lux/macro/syntax/definition.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try] diff --git a/stdlib/source/test/lux/macro/syntax/input.lux b/stdlib/source/test/lux/macro/syntax/input.lux index 34357f79a..e292cde72 100644 --- a/stdlib/source/test/lux/macro/syntax/input.lux +++ b/stdlib/source/test/lux/macro/syntax/input.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try] diff --git a/stdlib/source/test/lux/macro/syntax/type/variable.lux b/stdlib/source/test/lux/macro/syntax/type/variable.lux index 8ff84f36f..18197bf3e 100644 --- a/stdlib/source/test/lux/macro/syntax/type/variable.lux +++ b/stdlib/source/test/lux/macro/syntax/type/variable.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control ["." try ("#\." functor)] diff --git a/stdlib/source/test/lux/math.lux b/stdlib/source/test/lux/math.lux index a43d63a2b..db314f400 100644 --- a/stdlib/source/test/lux/math.lux +++ b/stdlib/source/test/lux/math.lux @@ -77,6 +77,17 @@ (let [round'd (/.round sample)] (and (|> round'd f.int i.frac (f.= round'd)) (f.<= +1.0 (f.abs (f.- sample round'd)))))) + (_.cover [/.root/2] + (let [sample (f.abs sample)] + (|> sample + /.root/2 + (/.pow +2.0) + (f.approximately? ..margin_of_error sample)))) + (_.cover [/.root/3] + (|> sample + /.root/3 + (/.pow +3.0) + (f.approximately? ..margin_of_error sample))) )) (do {! random.monad} [#let [~= (f.approximately? ..margin_of_error)] diff --git a/stdlib/source/test/lux/math/logic/continuous.lux b/stdlib/source/test/lux/math/logic/continuous.lux index 5ff4c46cc..ab7049221 100644 --- a/stdlib/source/test/lux/math/logic/continuous.lux +++ b/stdlib/source/test/lux/math/logic/continuous.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." monoid]]] [math ["." random] diff --git a/stdlib/source/test/lux/math/logic/fuzzy.lux b/stdlib/source/test/lux/math/logic/fuzzy.lux index ea39da68a..657285025 100644 --- a/stdlib/source/test/lux/math/logic/fuzzy.lux +++ b/stdlib/source/test/lux/math/logic/fuzzy.lux @@ -5,7 +5,7 @@ [abstract [equivalence (#+ Equivalence)] [monad (#+ do)] - [\\spec + [\\specification [functor ["$." contravariant]]]] [data diff --git a/stdlib/source/test/lux/math/modular.lux b/stdlib/source/test/lux/math/modular.lux index 5322b162b..090481806 100644 --- a/stdlib/source/test/lux/math/modular.lux +++ b/stdlib/source/test/lux/math/modular.lux @@ -6,7 +6,7 @@ [abstract [monad (#+ do)] ["." predicate] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." monoid] diff --git a/stdlib/source/test/lux/math/number/complex.lux b/stdlib/source/test/lux/math/number/complex.lux index 2670d53dc..cd4f1146c 100644 --- a/stdlib/source/test/lux/math/number/complex.lux +++ b/stdlib/source/test/lux/math/number/complex.lux @@ -5,7 +5,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." codec]]] diff --git a/stdlib/source/test/lux/math/number/frac.lux b/stdlib/source/test/lux/math/number/frac.lux index 093511510..9a5133a97 100644 --- a/stdlib/source/test/lux/math/number/frac.lux +++ b/stdlib/source/test/lux/math/number/frac.lux @@ -6,7 +6,7 @@ ["." ffi] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." order] diff --git a/stdlib/source/test/lux/math/number/i16.lux b/stdlib/source/test/lux/math/number/i16.lux index 4720a13b7..5a9e36f88 100644 --- a/stdlib/source/test/lux/math/number/i16.lux +++ b/stdlib/source/test/lux/math/number/i16.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [math ["." random (#+ Random)]]]] diff --git a/stdlib/source/test/lux/math/number/i32.lux b/stdlib/source/test/lux/math/number/i32.lux index 66d65fa40..4cced31ad 100644 --- a/stdlib/source/test/lux/math/number/i32.lux +++ b/stdlib/source/test/lux/math/number/i32.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [math ["." random (#+ Random)]]]] diff --git a/stdlib/source/test/lux/math/number/i64.lux b/stdlib/source/test/lux/math/number/i64.lux index 942930af0..94260d6ee 100644 --- a/stdlib/source/test/lux/math/number/i64.lux +++ b/stdlib/source/test/lux/math/number/i64.lux @@ -6,7 +6,7 @@ ["." bit ("#\." equivalence)]] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." monoid]]] diff --git a/stdlib/source/test/lux/math/number/i8.lux b/stdlib/source/test/lux/math/number/i8.lux index c5fee1fcf..8b454883d 100644 --- a/stdlib/source/test/lux/math/number/i8.lux +++ b/stdlib/source/test/lux/math/number/i8.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [math ["." random (#+ Random)]]]] diff --git a/stdlib/source/test/lux/math/number/int.lux b/stdlib/source/test/lux/math/number/int.lux index 47e381985..9b650e795 100644 --- a/stdlib/source/test/lux/math/number/int.lux +++ b/stdlib/source/test/lux/math/number/int.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." order] diff --git a/stdlib/source/test/lux/math/number/nat.lux b/stdlib/source/test/lux/math/number/nat.lux index ff3eb64d1..9577b25db 100644 --- a/stdlib/source/test/lux/math/number/nat.lux +++ b/stdlib/source/test/lux/math/number/nat.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." order] diff --git a/stdlib/source/test/lux/math/number/ratio.lux b/stdlib/source/test/lux/math/number/ratio.lux index 838e8ca81..0d67d6f69 100644 --- a/stdlib/source/test/lux/math/number/ratio.lux +++ b/stdlib/source/test/lux/math/number/ratio.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." monoid] diff --git a/stdlib/source/test/lux/math/number/rev.lux b/stdlib/source/test/lux/math/number/rev.lux index 70ab24c61..1a2eb29e5 100644 --- a/stdlib/source/test/lux/math/number/rev.lux +++ b/stdlib/source/test/lux/math/number/rev.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." order] diff --git a/stdlib/source/test/lux/meta.lux b/stdlib/source/test/lux/meta.lux index 3b3bf1ae2..9276f4a18 100644 --- a/stdlib/source/test/lux/meta.lux +++ b/stdlib/source/test/lux/meta.lux @@ -6,7 +6,7 @@ [abstract [equivalence (#+ Equivalence)] [monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/meta/location.lux b/stdlib/source/test/lux/meta/location.lux index 2aaa797a0..421c872dd 100644 --- a/stdlib/source/test/lux/meta/location.lux +++ b/stdlib/source/test/lux/meta/location.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [data ["." text]] diff --git a/stdlib/source/test/lux/test.lux b/stdlib/source/test/lux/test.lux index 9c3e0f506..d7c05641c 100644 --- a/stdlib/source/test/lux/test.lux +++ b/stdlib/source/test/lux/test.lux @@ -12,7 +12,8 @@ [data ["." text ("#\." equivalence)] [collection - ["." list]]] + ["." list] + ["." set]]] [math ["." random] [number @@ -162,6 +163,58 @@ ran_all_tests!)))))) )) +(def: #export dummy_target + "YOLO") + +(def: coverage + /.Test + ($_ /.and + (do random.monad + [not_covering (/.test "" true) + covering (/.covering .._ (/.test "" true))] + (wrap (do promise.monad + [[not_covering _] not_covering + [covering _] covering] + (/.cover' [/.covering] + (and (and (set.empty? (get@ #/.expected_coverage not_covering)) + (set.empty? (get@ #/.actual_coverage not_covering))) + (and (not (set.empty? (get@ #/.expected_coverage covering))) + (set.empty? (get@ #/.actual_coverage covering)))))))) + (do random.monad + [not_covering (/.covering .._ (/.test "" true)) + covering (/.covering .._ (/.cover [..dummy_target] true))] + (wrap (do promise.monad + [[not_covering _] not_covering + [covering _] covering] + (/.cover' [/.cover] + (and (and (not (set.empty? (get@ #/.expected_coverage not_covering))) + (not (set.member? (get@ #/.actual_coverage not_covering) (name_of ..dummy_target)))) + (and (not (set.empty? (get@ #/.expected_coverage covering))) + (set.member? (get@ #/.actual_coverage covering) (name_of ..dummy_target)))))))) + (do random.monad + [not_covering (/.covering .._ (/.test "" true)) + covering (/.covering .._ (wrap (/.cover' [..dummy_target] true)))] + (wrap (do promise.monad + [[not_covering _] not_covering + [covering _] covering] + (/.cover' [/.cover'] + (and (and (not (set.empty? (get@ #/.expected_coverage not_covering))) + (not (set.member? (get@ #/.actual_coverage not_covering) (name_of ..dummy_target)))) + (and (not (set.empty? (get@ #/.expected_coverage covering))) + (set.member? (get@ #/.actual_coverage covering) (name_of ..dummy_target)))))))) + (do random.monad + [not_covering (/.covering .._ (/.test "" true)) + covering (/.covering .._ (/.for [..dummy_target] (/.test "" true)))] + (wrap (do promise.monad + [[not_covering _] not_covering + [covering _] covering] + (/.cover' [/.for] + (and (and (not (set.empty? (get@ #/.expected_coverage not_covering))) + (not (set.member? (get@ #/.actual_coverage not_covering) (name_of ..dummy_target)))) + (and (not (set.empty? (get@ #/.expected_coverage covering))) + (set.member? (get@ #/.actual_coverage covering) (name_of ..dummy_target)))))))) + )) + (def: #export test /.Test (<| (/.covering /._) @@ -247,4 +300,5 @@ (n.= 1 (get@ #/.failures failure_tally)))))))) ..times ..in_parallel + ..coverage )))) diff --git a/stdlib/source/test/lux/time.lux b/stdlib/source/test/lux/time.lux index 17b17c61a..77933544c 100644 --- a/stdlib/source/test/lux/time.lux +++ b/stdlib/source/test/lux/time.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." enum] diff --git a/stdlib/source/test/lux/time/date.lux b/stdlib/source/test/lux/time/date.lux index cb9d46978..cb8ab50c8 100644 --- a/stdlib/source/test/lux/time/date.lux +++ b/stdlib/source/test/lux/time/date.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." enum] diff --git a/stdlib/source/test/lux/time/day.lux b/stdlib/source/test/lux/time/day.lux index d2499309b..03544b180 100644 --- a/stdlib/source/test/lux/time/day.lux +++ b/stdlib/source/test/lux/time/day.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." enum] diff --git a/stdlib/source/test/lux/time/duration.lux b/stdlib/source/test/lux/time/duration.lux index a3014cc1a..1d2fa1ce7 100644 --- a/stdlib/source/test/lux/time/duration.lux +++ b/stdlib/source/test/lux/time/duration.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." enum] diff --git a/stdlib/source/test/lux/time/instant.lux b/stdlib/source/test/lux/time/instant.lux index 6fef2f55e..377a47db1 100644 --- a/stdlib/source/test/lux/time/instant.lux +++ b/stdlib/source/test/lux/time/instant.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." enum] diff --git a/stdlib/source/test/lux/time/month.lux b/stdlib/source/test/lux/time/month.lux index 202048cac..d6f124244 100644 --- a/stdlib/source/test/lux/time/month.lux +++ b/stdlib/source/test/lux/time/month.lux @@ -5,7 +5,7 @@ [abstract [monad (#+ do)] ["." predicate] - [\\spec + [\\specification ["$." equivalence] ["$." hash] ["$." order] diff --git a/stdlib/source/test/lux/time/year.lux b/stdlib/source/test/lux/time/year.lux index ba364eaab..b1e2691db 100644 --- a/stdlib/source/test/lux/time/year.lux +++ b/stdlib/source/test/lux/time/year.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." codec]]] diff --git a/stdlib/source/test/lux/type.lux b/stdlib/source/test/lux/type.lux index 3a01acaab..b6c24bde2 100644 --- a/stdlib/source/test/lux/type.lux +++ b/stdlib/source/test/lux/type.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract ["." monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [control [pipe (#+ case>)]] diff --git a/stdlib/source/test/lux/type/check.lux b/stdlib/source/test/lux/type/check.lux index 949009d5b..40079eae9 100644 --- a/stdlib/source/test/lux/type/check.lux +++ b/stdlib/source/test/lux/type/check.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract ["." monad (#+ do)] - [\\spec + [\\specification ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]] diff --git a/stdlib/source/test/lux/type/quotient.lux b/stdlib/source/test/lux/type/quotient.lux index 11d711ac7..5d39b91f2 100644 --- a/stdlib/source/test/lux/type/quotient.lux +++ b/stdlib/source/test/lux/type/quotient.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract ["." monad (#+ do)] - [\\spec + [\\specification ["$." equivalence]]] [data ["." text ("#\." equivalence) diff --git a/stdlib/source/test/lux/type/unit.lux b/stdlib/source/test/lux/type/unit.lux index 6789d7b65..1bed08707 100644 --- a/stdlib/source/test/lux/type/unit.lux +++ b/stdlib/source/test/lux/type/unit.lux @@ -7,7 +7,7 @@ [abstract [monad (#+ do)] [equivalence (#+ Equivalence)] - [\\spec + [\\specification ["$." equivalence] ["$." order] ["$." enum]]] diff --git a/stdlib/source/test/lux/world/console.lux b/stdlib/source/test/lux/world/console.lux index 055ee1466..c34a5c488 100644 --- a/stdlib/source/test/lux/world/console.lux +++ b/stdlib/source/test/lux/world/console.lux @@ -15,7 +15,7 @@ ["." random]]]] [\\library ["." /]] - [\\spec + [\\specification ["$." /]]) (exception: dead) diff --git a/stdlib/source/test/lux/world/file.lux b/stdlib/source/test/lux/world/file.lux index 1074749f4..ecc596399 100644 --- a/stdlib/source/test/lux/world/file.lux +++ b/stdlib/source/test/lux/world/file.lux @@ -12,7 +12,7 @@ ["#." watch]] [\\library ["." /]] - [\\spec + [\\specification ["$." /]]) (def: #export test diff --git a/stdlib/source/test/lux/world/file/watch.lux b/stdlib/source/test/lux/world/file/watch.lux index a4a8748ed..bbbcdf680 100644 --- a/stdlib/source/test/lux/world/file/watch.lux +++ b/stdlib/source/test/lux/world/file/watch.lux @@ -183,4 +183,17 @@ after_deletion!)))] (_.cover' [/.mock /.polling] (try.default false verdict))))) + (do random.monad + [directory (random.ascii/alpha 5) + #let [/ "/" + [fs watcher] (/.mock /)]] + (wrap (do promise.monad + [started? ( \ watcher start /.all directory)] + (_.cover' [/.cannot_poll_a_non_existent_directory] + (case started? + (#try.Success _) + false + + (#try.Failure error) + (exception.match? /.cannot_poll_a_non_existent_directory error)))))) ))) diff --git a/stdlib/source/test/lux/world/output/video/resolution.lux b/stdlib/source/test/lux/world/output/video/resolution.lux index 1cfcd0ae8..671b1952c 100644 --- a/stdlib/source/test/lux/world/output/video/resolution.lux +++ b/stdlib/source/test/lux/world/output/video/resolution.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] [abstract [monad (#+ do)] - [\\spec + [\\specification ["$." equivalence] ["$." hash]]] [data diff --git a/stdlib/source/test/lux/world/program.lux b/stdlib/source/test/lux/world/program.lux index fafda5f91..0028cfe9c 100644 --- a/stdlib/source/test/lux/world/program.lux +++ b/stdlib/source/test/lux/world/program.lux @@ -25,7 +25,7 @@ ["." / [// [file (#+ Path)]]]] - [\\spec + [\\specification ["$." /]]) (def: (environment env_size) diff --git a/stdlib/source/test/lux/world/shell.lux b/stdlib/source/test/lux/world/shell.lux index 8d117eefa..749441a7a 100644 --- a/stdlib/source/test/lux/world/shell.lux +++ b/stdlib/source/test/lux/world/shell.lux @@ -25,7 +25,7 @@ ["." / [// [file (#+ Path)]]]] - [\\spec + [\\specification ["$." /]]) (exception: dead) |