我正在尝试验证 Spec 中的大型 clojure 数据结构。
我在这部分失败了:
{:pageName "HelloWorld" :pageType ::workPage :cells ["Hello World" "How are you?"]}
使用这个:
(s/def ::WorkPage (s/keys :req-un [::pageName ::pageType ::cells]))
此消息失败(来自说明)
{:pageName "HelloWorld", :pageType :assemblage.db/workPage, :cells ["Hello World" "How are you?"]} db.js:52:1
false db.js:54:1
-- Spec failed --------------------
[:pageName "HelloWorld"]
^^^^^^^^^^^^^^^^^^^^^^^^
should satisfy
map?
如果我在 repl 中单独运行上述规范,它就可以工作。
但是在上下文中(在 clojurescript 文件中),它看起来好像数据结构在被测试之前正在某个地方被转换为向量。
有没有人见过这样的事情?
会不会是在 ClojureScript 中这样做的结果?这是一些奇怪的javascript强制泄漏并咬我吗?
或者它可能是完全不同的东西?