【发布时间】:2011-11-27 05:34:11
【问题描述】:
我已经编写了以下 Midje 测试:
(fact (followers-minus-friends ...name...) => ["Dude"]
(provided (idset show-followers ...name...) => #{1 2 3}
(idset show-friends ...name...) => #{1 2}
(userinfos #{3}) => [{:screen_name "Dude"}]))
测试以下函数(在不同的命名空间中):
(defn followers-minus-friends [screenname]
(let [difference-ids (difference (idset show-followers screenname)
(idset show-friends screenname))
userinfos (userinfos difference-ids)]
(map :screen_name userinfos)))
测试可能看起来毫无用处,但我只是想习惯 Midje。不知何故,函数 idset 刚刚被执行,我想通过在提供的子句中提供返回值来防止这种情况。对此有何解释?
编辑:我已经在这里把项目上传到Github,以防你想尝试重现上述情况:https://github.com/Borkdude/twitter-utils
【问题讨论】:
-
在不知道所测试函数的详细信息的情况下,我尝试使用gist.github.com/1359355 重现该案例,但我认为该函数未执行
-
@jneira:添加了更多细节。
-
@jneira:项目现在在 github:github.com/Borkdude/twitter-utils
-
我刚刚开始关注 Clojure 和 Midje。您介意解释一下“...名称...”符号是什么以及在这种情况下如何使用它吗?谢谢!
-
我回答了我自己的问题! github.com/marick/Midje/wiki/Metaconstants