I have a class as :
public class SomeClass {
private String someField;
public SomeClass(String field) {
someField = field;
}
public String getUrl() {
return "http://" + someField;
}
public static class Builder {
private String uri;
public Builder(String url) {
this.uri = url;
}
public SomeClass build() {
return new SomeClass(uri);
}
}
}
The above class is being called from another class as:
class MainClass {
private SomeClass someClass;
public boolean isUrlAvailable() {
someClass = new SomeClass.Builder("myURI").build();
String url = someClass.getUrl();
if (url != null && url.length() > 10) {
return true;
}
return false;
}
}
My requirement is to test the MainClass, for which I need to mock SomeClass and SomeClass.Builder class. I tried to mock the two classes but could not successfully achieve the requirement.