mardi 19 janvier 2021

mockito spy doesn't act as I expect

I'm trying to use spy mockito in my test. Here is my code:

@Spy
AddressServiceImpl service;

@InjectMocks
AddressController controller;

@Test
void loadAddresses(){
    User user = new User();
    Address address1 = new Address(user,"2345", "5678", "7890", "test@gmail.com", "street");
    Address address2 = new Address(user,"9876", "7654", "6543", "test2@gmail.com", "avenue");

    service.save(address1);
    service.save(address2);

    List<Address> searchAdress = new ArrayList<>();

    given(service.findByEmailContaining(anyString())).willCallRealMethod();

    searchAdress = controller.loadAddress(address1);
    }

And in my controller:

private AddressService addressService;

public List<Address> loadAddress(Address address){
    List<Address> theAddresses = new ArrayList<>();


    theAddresses = addressService.findByEmailContaining("%"+ address.getEmail() + "%");

    return theAddresses;

}

I expect that controller searches in my saved addresses(address1,address2) by address1.getEmail() and returns the address1 object. but it dosen't return any thing.

Aucun commentaire:

Enregistrer un commentaire