我正在Clojure中编写一些测试,我想知道在其他命名空间中是否可以从其他def
中看到defn
deftest
内的deftest
/ (deftest tests
(defn- mock-element
[is-valid]
(reify...
。我也倾向于认为这是不好的做法,并且有一种更惯用的方式来共享测试功能(例如创建模拟)。有吗?
目前,定义:
{{1}}
不会在命名空间之外暴露mock元素,或者我做错了什么。 有没有办法实现这个目标?
答案 0 :(得分:1)
def
始终是全球性的:如果您想要本地的内容,请使用let
或letfn
:
(deftest tests
(letfn [(mock-element [is-valid]
(reify...)]
...))