Eu estou em um projeto e preciso efetuar testes em uma classe como essa, porém não está rolando, sempre na hora de obter a instancia na classe Cliente, na linha " final ClienteDelegate consulta = new ClienteDelegate();"
Alguem poderia me dar uma luz pra como eu conseguir fazer ele pegar a instancia na classe Delegate? Obrigado
@RunWith(MockitoJUnitRunner.class)
public class AgenciaEncerradaAbsorvedoraTest {
@InjectMocks
private Cliente cliente;
@Test
public void deveTestarClientes() throws AgenciaException{
ClienteDelegate delegate = Mockito.mock(ClienteDelegate.class);
List<TelefoneVO> telefone = Arrays.asList(new TelefoneVO("11911111111");
Mockito.when(delegate.listarTelefones()).thenReturn(telefone);
cliente.carregaTelefone();
}
}
public class Cliente implements Serializable {
public List<TelefoneVO> carregaTelefone() {
try {
final ClienteDelegate consulta = new ClienteDelegate();
listaTelefones = consulta.listarTelefones();
} catch (final Exception ex) {
listaTelefones = null;
Cliente.log.error("\nNão foi possível carregar a lista de agencias \n", ex);
}
return listaTelefones;
}
}
public class ClienteDelegate {
private static final Logger log = Logger.getLogger(ClienteDelegate.class);
@EJB
private ClienteBean cliente;
public ClienteDelegate() throws AgenciaException, Exception {
try {
this.cliente = (ClienteBean) ServiceLocator.getInstance()
.lookup(EJBNameVO.PATH + EJBNameVO.CLIENTE);
} catch (NamingException e) {
log.error("Delegate: Não foi possível obter uma instancia do Session "
+ EJBNameVO.CLIENTE + " no construtor default devido ao seguinte erro", e);
throw new AgenciaException("Delegate: NamingException, não foi possível obter uma instancia do Session "
+ EJBNameVO.CLIENTE + " no construtor default devido ao seguinte erro", e);
}
}
public List<TelefoneVO> listarAgencias() throws AgenciaException {
List<TelefoneVO> telefones = new ArrayList<TelefoneVO>();
try {
telefones = this.telefones.listarAgencias();
} catch (Exception e) {
log.error("Delegate: Não foi possível a consulta da lista, erro: ", e);
throw new AgenciaException(
"Delegate: Não foi possível a consulta a lista, erro: ", e);
}
return telefones;
}
}