(.module: [lux #* ["_" test (#+ Test)] [abstract [monad (#+ do)]] [data ["." text ("#\." equivalence)] [collection ["." set] ["." list]]] [math ["." random (#+ Random)] [number ["n" nat]]]] [\\program ["." / ["/#" // #_ ["#" type]]]]) (def: #export test Test (<| (_.covering /._) (_.for [/.Extension] ($_ _.and (_.cover [/.lux_library /.jvm_library /.pom /.sha-1 /.md5] (let [options (list /.lux_library /.jvm_library /.pom /.sha-1 /.md5) uniques (set.from_list text.hash options)] (n.= (list.size options) (set.size uniques)))) (_.cover [/.extension] (`` (and (~~ (template [ ] [(text\= (/.extension ))] [//.lux_library /.lux_library] [//.jvm_library /.jvm_library] [//.pom /.pom] ))))) ))))