0
我正在使用Midje進行項目。我試圖在wiki中找到我如何創建自己的檢查器,但找不到它。如何在Midje創建自己的檢查器?
就我而言,我想比較兩幅圖像是否相等。但可能是因爲我只想比較文件的一些屬性,因爲它的大小可能是幾個像素。也許「平等」會有點靈活,因此需要一個個性化的檢查器。
我該怎麼辦呢?
謝謝。
我正在使用Midje進行項目。我試圖在wiki中找到我如何創建自己的檢查器,但找不到它。如何在Midje創建自己的檢查器?
就我而言,我想比較兩幅圖像是否相等。但可能是因爲我只想比較文件的一些屬性,因爲它的大小可能是幾個像素。也許「平等」會有點靈活,因此需要一個個性化的檢查器。
我該怎麼辦呢?
謝謝。
在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。