package unitils.wiki; import org.junit.*; import static org.junit.Assert.*; import org.unitils.*; import org.unitils.inject.annotation.*; import org.unitils.mock.*; import org.unitils.mock.core.*; /** * Sample tests extracted from the Unitils Mock * <a href="http://sourceforge.net/apps/mediawiki/unitils/index.php?title=Unitils_Mock">wiki</a>. */ public final class MockChainingTest extends UnitilsJUnit4 { @TestedObject MyService myService; @InjectIntoByType Mock<UserService> userService; @Test public void withoutChaining() { Mock<User> user = new MockObject<User>("user", User.class, this); userService.returns(user).getUser(); // returns the user mock user.returns("my name").getName(); // define behavior of user mock assertEquals("my name", myService.outputUserName()); } @Test public void sameTestButWithChaining() { userService.returns("my name").getUser().getName(); // automatically returns a user mock assertEquals("my name", myService.outputUserName()); } }