2010-05-02 12 views
2

est-il une différence sémantique entre l'écriture"est" dans JUnit 4 affirmations

assertThat(object1, is(equalTo(object2))); 

et l'écriture

assertThat(object1, equalTo(object2))); 

? Sinon, je préférerais la première version, car elle se lit mieux. Y a-t-il d'autres considérations ici?

Répondre

1

La documentation dit tout:
Décore un autre Matcher en conservant le comportement tout en permettant aux tests d'être légèrement plus expressifs.
par ex. assertThat (fromage, equalTo (nauséabond))
vs assertThat (fromage, est (equalTo (nauséabond)))

http://www.junit.org/apidocs/org/hamcrest/core/Is.html
En d'autres termes, vous êtes sur la bonne voie.

+0

Facepalm - Je devrais le lire. –

0

Ils sont équivalents, autant que je sache. Le matcher "Is" ne fait que passer au matcher contenu. Il semble que ce soit là pour ajouter de la lisibilité, et peut-être une rétrocompatibilité.