Jasmine: Warum nicht definiert und nicht zu definieren?

8

Ich lerne gerade die Jasmine-Bibliothek, und ich habe bemerkt, dass Jasmine eine sehr begrenzte Anzahl von eingebauten Behauptungen hat. Ich habe auch bemerkt, dass trotz einer derart begrenzten Anzahl zwei Behauptungen redundant erscheinen: toBeDefined / toBeUndefined .

Mit anderen Worten, beide scheinen genau nach demselben zu suchen:

%Vor%

Gibt es einen Grund dafür, zum Beispiel, dass toBeDefined nicht gleich toBeUndefined ist? Oder ist das nur die eine Behauptung in Jasmine, die zwei vollkommen gleiche Möglichkeiten hat, aufgerufen zu werden?

    
machineghost 05.02.2013, 23:22
quelle

1 Antwort

6

Das könnte man auch für toBeTruthy und toBeFalsy oder toBeLessThan und toBeGreaterThan annehmen (obwohl ich denke, dass die fehlende Behauptung der letzten beiden toEqual ist). Am Ende kommt es auf Lesbarkeit und Benutzerfreundlichkeit an.

Um Ihnen eine vollständigere Antwort zu geben, kann es nützlich sein, sich den Code anzusehen, der für diese Funktionen aufgerufen wird. Der Code, der ausgeführt wird, durchläuft separate Pfade (also ist toBeUndefined nicht einfach !toBeDefined ). Die einzige wirkliche Antwort, die Sinn macht, ist die Lesbarkeit (oder das Eingehen auf lästige Feature-Anfragen). Ссылка

    
DFM 06.02.2013, 13:40
quelle

Tags und Links