Please assist with my below question.
Let's say we are refactoring the Person class.
Before Person class:
Person.java has a method ,
public String getPersonAddressInfo(){
Address address = new Address ();
return address.getInfo();
}
After refactor Person class:
@Autowired
Address address;
public String getPersonAddressInfo(){
return address.getInfo();
}
Now , if we write a junit as below, mocking the address object,
@Mock
Address address;
@Inject Mock
Person person;
@setup{ required code}
@Test public void
should_return_adress_info_as_something(){
Mockito.when(address.getInfo()),thenReturn("Westbrough,MA");
assertThat(person.getPersonAddressInfo, equalTo("Westborough,MA"));
}
The method should_return_adress_info_as_something works only for the After class and not Before class. Why is this the case ? Is it because we are creating a new object in the Before Person Class ?
Now, in the After class example that was given, let's say my prod app is not on spring framework , how would i get an instance of my address object ?
Kindly assist.
Thanks,
Vikram