2016-04-27 9 views
0

Ich benutze Midje für ein Projekt. Ich habe versucht, im Wiki zu finden, wie ich meinen eigenen Checker erstellen könnte, aber ich konnte ihn nicht finden.Wie erstelle ich einen eigenen Checker in Midje?

In meinem Fall möchte ich vergleichen, ob zwei Bilder gleich sind. Aber es könnte sein, dass ich nur einige Eigenschaften der Datei vergleichen möchte, wie es Größe ist, vielleicht ein paar Pixel. Vielleicht wäre die "Gleichheit" ein bisschen flexibel, daher die Notwendigkeit eines personalisierten Checkers.

Wie kann ich es tun?

Danke.

Antwort

2

Es gibt a wiki page in Midje GitHub Repo beschreibt, wie Sie Ihre eigenen Checker definieren.

Ein Checker auf der rechten Seite eines Pfeils ist eine einfache Prädikatfunktion, die das Ergebnis der linken Seite akzeptiert.

In Ihrem Beispiel-Szenario, können Sie einfach Ihre eigene Funktion erstellen zur Überprüfung einer Datei:

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

Dann können Sie es in Ihren Tests verwenden:

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

Wenn Sie Kontrolleure möchten Auf der linken Seite eines Pfeils müssen Sie den Anweisungen auf another wiki page folgen.

Und wenn Sie nicht mit dem Format der Fehlermeldungen zufrieden sind, die bei der Verwendung von einfachen Prädikatfunktionen generiert wurden, können Sie einige Tools verwenden, die auf der Wiki-Seite unter chatty checkers beschrieben sind.