0

我正在将 Midje 用于一个项目。我试图在 wiki 中查找如何创建自己的检查器,但找不到。

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

我该怎么做?

谢谢。

4

1 回答 1

2

midje github repo 中有一个 wiki 页面,描述了如何定义自己的检查器。

箭头右侧使用的检查器是一个简单的谓词函数,接受左侧的结果。

在您的示例场景中,您可以创建自己的函数来检查文件:

(defn filename-matches? [expected-name]
  (fn filename-matcher [actual-file]
    (= expected-name (.getAbsolutePath actual-file))))

然后你可以在你的测试中使用它:

(generate-file) => (filename-matches? "output.txt")

如果您想在箭头左侧使用检查器,您需要按照另一个 wiki 页面上的说明进行操作。

如果您对使用普通谓词函数时生成的失败消息的格式不满意,您可以使用 wiki 页面上讨论的聊天检查器中描述的一些工具。

于 2016-04-28T05:18:21.160 回答