我使用Midje进行项目。我试图在维基中找到我如何创建自己的检查程序,但无法找到它。
在我的情况下,我想比较两个图像是否相等。但可能是因为我只想比较文件的某些属性,因为它的大小,可能是几个像素。也许"平等"会有点灵活,因此需要个性化的检查器。
我该怎么做?
感谢。
答案 0 :(得分:2)
在midje github repo中有a wiki page描述如何定义自己的检查器。
箭头右侧使用的检查器是接受左手边结果的普通谓词函数。
在您的示例场景中,您可以创建自己的函数来检查文件:
(defn filename-matches? [expected-name]
(fn filename-matcher [actual-file]
(= expected-name (.getAbsolutePath actual-file))))
然后你可以在测试中使用它:
(generate-file) => (filename-matches? "output.txt")
如果您想在箭头的左侧使用检查器,则需要按照another wiki page上的说明进行操作。
如果您对使用普通谓词函数时生成的失败消息的格式不满意,可以使用wiki页面上讨论的chatty checkers中描述的一些工具。