aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/test/lux/tool/compiler/meta/archive/artifact.lux
blob: 2bb161796c178d54c22a968b9fec777b0f8d4e72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
(.using
 [library
  [lux "*"
   ["_" test {"+" Test}]
   [abstract
    [\\specification
     ["$[0]" equivalence]]]
   [math
    ["[0]" random {"+" Random}]]]]
 ["[0]" / "_"
  ["[1][0]" category]]
 [\\library
  ["[0]" /]])

(def: random_dependency
  (Random /.Dependency)
  ($_ random.and
      random.nat
      random.nat
      ))

(def: .public random
  (Random /.Artifact)
  ($_ random.and
      random.nat
      /category.random
      random.bit
      ))

(def: .public test
  Test
  (<| (_.covering /._)
      (_.for [/.Artifact /.ID])
      ($_ _.and
          (_.for [/.equivalence]
                 ($equivalence.spec /.equivalence ..random))

          /category.test
          )))