1
код ссылкиВ моей EasyMock У меня есть ошибка от объекта внутри метода тестового класса
@Test
public void testXClass(){
XClass xclass = new XClass();
UriBuilder uriBuilder = EasyMock.createMock(UriBuilder.class);
EasyMock.expect(uriBuilder.fromUri(EasyMock.anyObject(String.class))).andReturn(dummyUriBuilder()).anyTimes();
//EasyMock.replay(uriBuilder);
EasyMock.expect(xclass.xMethod(EasyMock.anyObject(String.class))).andReturn("Done").anyTimes();
String x = xclass.xMethod(EasyMock.anyObject(String.class));
}
private UriBuilder dummyUriBuilder() {
UriBuilder uriBuilder = UriBuilder.fromUri("https://dev.x-service.com");
uriBuilder.path("/x1/");
return uriBuilder;
}
class XClass {
public String xMethod(String x) {
...
UriBuilder uriBuilder = UriBuilder.fromUri("https://dev.x-service.com");
uriBuilder.path("/x1/");
...
}
}
Я получаю сообщение об ошибке на линии
UriBuilder uriBuilder = UriBuilder.fromUri("https://dev.x-service.com");
StackTrace:
java.lang.IllegalArgumentException at
org.apache.cxf.jaxrs.impl.UriBuilderImpl.uri(UriBuilderImpl.java:888) at
javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
Как мне издеваться над этим материалом UriBuilder
? Я думаю, что делаю это неправильно при настройке EasyMock.
Спасибо, я добавил это после того, как вы предложили, \t \t PowerMock.mockStatic (UriBuilder.class); \t \t EasyMock.expect (UriBuilder.fromUri (EasyMock.anyObject (String.class))) иReturn (dummyUriBuilder()); \t \t PowerMock.replay (UriBuilder.class); Получение такой же ошибки – kshah
Вы используете «PowerMockRule» (или «PowerMockRunner'): https://github.com/jayway/powermock/wiki/PowerMockRule –
PowerMockRule и PowerMockRunner с JUnit, я использую TestNg, мой тест case extends org.powermock.modules.testng.PowerMockTestCase – kshah