Unidade Testando um método estático em uma classe Java a partir do caso do Groovy Test
Eu estou tentando escrever um caso de teste no groovy para uma classe que está escrita em java. A classe Java (nome: Helper) possui um método estático no qual um objeto HttpClient é obtido e o método executeMethod é chamado. Para Unittest esta classe, eu estou tentando zombar deste httpClient.executeMethod () no caso de teste groovy, mas não é capaz de zombar dele direito.
Abaixo está a classe Java
public class Helper{
public static message(final String serviceUrl){
HttpClient httpclient = new HttpClient();
HttpMethod httpmethod = new HttpMethod();
// the below is the line that iam trying to mock
String code = httpClient.executeMethod(method);
}
}
Quaisquer idéias sobre como a unidade testar este método estático de groovy. Como o objeto httpClient é objeto dentro do método de classe, como eu mexo este objeto no caso de teste groovy?
Este é o caso de teste que tenho até agora.Estou tentando zombar de nulo, mas não acontecendo ...
void testSendMessage(){
def serviceUrl = properties.getProperty("ITEM").toString()
// mocking to return null
def mockJobServiceFactory = new MockFor(HttpClient)
mockJobServiceFactory.demand.executeMethod{ HttpMethod str ->
return null
}
mockJobServiceFactory.use {
def responseXml = helper.message(serviceUrl)
}
}