/*
* Copyright (c) 2006-2011 Rogério Liesenfeld
* This file is subject to the terms of the MIT license (see LICENSE.txt).
*/
package mockit.integration.testng;
import static org.testng.Assert.*;
import org.testng.annotations.*;
import mockit.*;
public final class DynamicMockingInBeforeMethodTest
{
static final class MockedClass
{
boolean doSomething(int i) { return i > 0; }
}
final MockedClass anInstance = new MockedClass();
@BeforeMethod
public void recordExpectationsOnDynamicallyMockedClass()
{
assertTrue(anInstance.doSomething(56));
new NonStrictExpectations(anInstance)
{{
anInstance.doSomething(anyInt); result = true;
}};
}
@AfterMethod
public void verifyThatDynamicallyMockedClassIsStillMocked()
{
new FullVerifications()
{{
anInstance.doSomething(anyInt); times = 1;
}};
}
@Test
public void testSomething()
{
assertTrue(anInstance.doSomething(56));
}
@Test
public void testSomethingElse()
{
assertTrue(anInstance.doSomething(-129));
}
}