@Test public void verifyAllInvocationsToOnlyOneOfTwoMockedTypes(AnotherDependency mock2) { exerciseCodeUnderTest(); mock2.doSomething(); new FullVerifications(mock) { { mock.prepare(); mock.setSomething(anyInt); minTimes = 1; maxTimes = 2; mock.editABunchMoreStuff(); mock.save(); times = 1; } }; new FullVerifications(mock.getClass()) { { mock.prepare(); mock.setSomething(anyInt); minTimes = 1; maxTimes = 2; mock.editABunchMoreStuff(); mock.save(); times = 1; } }; }
@Test(expected = UnexpectedInvocation.class) public void unverifiedStaticInvocationForSpecifiedMockInstance(final AnotherDependency mock2) { mock2.doSomething(); AnotherDependency.staticMethod(); new FullVerifications(mock2) { { mock2.doSomething(); } }; }
@Test public void verifyNoInvocationsOccurredOnMockedDependencyWithOneHavingOccurred( AnotherDependency mock2) { mock2.doSomething(); mock.editABunchMoreStuff(); try { new FullVerifications(mock) {}; fail(); } catch (UnexpectedInvocation e) { assertTrue(e.getMessage().contains("editABunchMoreStuff()")); } }
@Test(expected = UnexpectedInvocation.class) public void verifyAllInvocationsWithSomeMissing(final AnotherDependency mock2) { exerciseCodeUnderTest(); mock2.doSomething(); new FullVerifications(mock, mock2) { { mock.prepare(); mock.setSomething(anyInt); mock.save(); mock2.doSomething(); } }; }
@Test public void verifyStaticInvocationForSpecifiedMockInstance(final AnotherDependency mock2) { mock2.doSomething(); AnotherDependency.staticMethod(); mock2.doSomethingElse(1); mock.editABunchMoreStuff(); mock2.doSomethingElse(2); new FullVerificationsInOrder(mock2) { { mock2.doSomething(); AnotherDependency.staticMethod(); mock2.doSomethingElse(anyInt); mock2.doSomethingElse(anyInt); } }; }
@Test public void verifyAllInvocationsToOneOfTwoMocksInIteratingBlock(AnotherDependency mock2) { mock2.doSomething(); mock.setSomething(123); mock.save(); mock2.doSomethingElse(1); mock.setSomething(45); mock.save(); mock2.doSomethingElse(2); new FullVerifications(2, mock) { { mock.setSomething(anyInt); mock.save(); } }; }
@Test public void verifyNoInvocationsOnOneOfTwoMockedDependenciesBeyondThoseRecordedAsExpected( final AnotherDependency mock2) { new NonStrictExpectations() { { mock.setSomething(anyInt); minTimes = 1; mock2.doSomething(); times = 1; } }; mock.prepare(); mock.setSomething(1); mock.setSomething(2); mock.save(); mock2.doSomething(); new FullVerifications(mock2) {}; }
@Test public void verifyNoInvocationsOccurredOnOneOfTwoMockedDependencies(AnotherDependency mock2) { mock2.doSomething(); new FullVerifications(mock) {}; }