我写了一个用来表示验证结果的spec,对于无效的情况,我包括由 s/explain-data
报告的问题列表。
我有些这样的
(s/def ::invalid-item (s/keys :req [::path :clojure.spec.alpha/problems]))
但这导致一些生成测试失败,因为没有为 clojure.spec.alpha/problems
定义spec
> 在 clojure.alpha.spec/reg-resolve! (spec.clj:90) 处发生执行错误。
无法解析spec: :clojure.spec.alpha/problems
尽管我可以推断spec并在自己的命名空间中定义它,但我本以为spec已经存在,这是否是一个合理的假设?
在使用自己的spec中是否应该使用 :clojure.spec.alpha/problems,还是应该将其转换为自己的spec?