@Test public void xhr() throws Exception { new MockUnit(Mutant.class) .expect( unit -> { Mutant xRequestedWith = unit.get(Mutant.class); expect(xRequestedWith.toOptional(String.class)) .andReturn(Optional.of("XMLHttpRequest")); expect(xRequestedWith.toOptional(String.class)).andReturn(Optional.empty()); }) .run( unit -> { assertEquals( true, new RequestMock() { @Override public Mutant header(final String name) { assertEquals("X-Requested-With", name); return unit.get(Mutant.class); } }.xhr()); assertEquals( false, new RequestMock() { @Override public Mutant header(final String name) { assertEquals("X-Requested-With", name); return unit.get(Mutant.class); } }.xhr()); }); }
/** * Methode, um zwei Mutanten gegeneinander kämpfen zu lassen. * * @param m Ein Gegner(Mutant) zum Kämpfen * @return Den Ausgang des Kampfes(true, false) */ @Override public boolean kaempfe(Mutant m) { if (m instanceof Schurke) { /* Aufruf von Schurke.kaempfe(), da der Ausgang des Kampfes, bei gleichen Objekten, in jeder Richtung gleich ausgehen muss, das Ergebnis muss nur negiert sein. */ return !m.kaempfe(this); } else { throw new IllegalArgumentException( "Superheld darf nicht gegen einen " + "anderen Superhelden kämpfen!"); } }