2016-02-24 2 views
2

Есть ли способ высмеять вызов суперкласса с помощью EasyMock?Как высмеять вызов суперкласса с помощью EasyMock

Я хочу проверить что-то вроде этого.

public class A extends B { 

    @Override 
    public String getName() { 
     String bClassName = super.getName(); 
     String aClassName = "Class A"; 
     return aClassName + " -> " + bClassName; 
    } 
} 

public class B { 

    public String getName(){ 
     return "Class B"; 
    } 

} 

public class ATest extends TestCase { 

    private A a = new A(); 

    @Test 
    public void testGetName() { 
     A partialMockA = EasyMock.createMockBuilder(A.class) 
       .addMockedMethod("getName").createMock(); 

//  expect b.getName(); 

     replay(partialMockA); 
     String name = partialMockA.getName(); 
     assertEquals("Class A -> <MockResult>", name); 
     verify(partialMockA); 
    } 
} 

Я играю с partialMocks, но я думаю, что это неправильный способ сделать это.

ответ

0

Нет. Не с EasyMock. Вам нужно будет добавить PowerMock для этого. Например, вы можете подавить супер-вызов (насколько я знаю, но у меня нет примера под рукой).

Смежные вопросы