Czy w JUnit można stwierdzić, że obiekt jest instancją klasy? Z różnych powodów w teście mam obiekt, który chcę sprawdzić typ. Czy jest to typ Object1 czy typ Object2?
Obecnie mam:
assertTrue(myObject instanceof Object1);
assertTrue(myObject instanceof Object2);
To działa, ale zastanawiałem się, czy istnieje bardziej ekspresyjny sposób na zrobienie tego.
Na przykład coś takiego:
assertObjectIsClass(myObject, Object1);
Mógłbym to zrobić:
assertEquals(myObject.class, Object1.getClass());
Czy istnieje konkretna metoda asercji, która pozwala mi testować typ obiektu w bardziej elegancki, płynny sposób?
assertTrue
. assertTrue
powiedziałby po prostu expected true got false
, Hamcrest powiedziałbyexpected instanced of XYZ, got instance of ABC
assertTrue(myObject instanceof Object1);
iassertEquals(myObject.class, Object1.getClass());
czy faktycznie są to różne testy? Pierwszy akceptuje myObject jako instancję podklasyObject1
, później nie.