Есть ли в Mockito / PowerMockito какие-либо способы для насмешки над некоторыми методами суперкласса.
Ниже приведен сценарий, он выполняет многоуровневое наследование.
public class Network {
public String getNetwork() {
return "Technology";
}
}
Вот еще один класс Technology
который расширяет Network
public class Technology extends Network {
public Type getTechnology() {
String network = getNetwork();
if(network == null){
return null;
}
return network;
}
}
Другой класс Service
, расширяющий Technology
public class BaseService extends Technology {
public void getServices() {
Type type = getTechnology();
if(type == null){
throw new Exception('Type not found');
}
}
}
Я хочу написать тестовый пример для метода класса BaseService getServices
, поэтомучто он должен выдать исключение, когда технологический класс Type
равен нулю.
Я попытался выполнить несколько шагов, но не смог помочь.
Пример написанного теста
@Test
public void test_get_services_should_throw__exception_when_type_is_null() throws Exception{
//Arrange
expectedException.expect(Exception.class);
baseService = Mockito.mock(BaseService.class, Mockito.CALLS_REAL_METHODS);
when(baseService.getTechnology()).thenReturn(null);
//Act
baseService.getServices();
}
Приведенный выше фрагмент кода является всего лишь примером и может содержать ошибки.,Пожалуйста, игнорируйте, если таковые имеются.
Пожалуйста, помогите мне решить эту проблему.
Заранее спасибо.