2016-04-27 30 views
0

我正在使用Midje进行项目。我试图在wiki中找到我如何创建自己的检查器,但找不到它。如何在Midje创建自己的检查器?

就我而言,我想比较两幅图像是否相等。但可能是因为我只想比较文件的一些属性,因为它的大小可能是几个像素。也许“平等”会有点灵活,因此需要一个个性化的检查器。

我该怎么办呢?

谢谢。

回答

2

在midje github回购中有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