blob: 492b02fa768d914fa73788c647acf8ebbff5e5bc (
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
40
41
|
(.using
[library
[lux "*"
["_" test {"+" Test}]
[abstract
[monad {"+" do}]]
[data
["[0]" bit ("[1]#[0]" equivalence)]
["[0]" text ("[1]#[0]" equivalence)
["%" format {"+" format}]]]
[math
["[0]" random {"+" Random}]
[number
["n" nat]]]]]
[\\library
["[0]" /]])
(def: .public random
(Random /.Version)
random.nat)
(def: .public test
Test
(<| (_.covering /._)
(_.for [/.Version])
(do [! random.monad]
[this ..random
that ..random]
(`` (all _.and
(_.cover [/.format]
(bit#= (n.= this that)
(text#= (/.format this) (/.format that))))
(~~ (template [<level>]
[(_.cover [<level>]
(text.contains? (%.nat (<level> this))
(/.format this)))]
[/.patch]
[/.minor]
[/.major]))
)))))
|