Я пытаюсь сделать простой запрос GET
в рамках модульного теста.
У меня есть тестовый файл со следующими переменными:
@Mock
private MoviesActivity mView;
private MoviesPresenter mPresenter;
и setup выглядит следующим образом:
@Before
public void setUp() {
mPresenter = new MoviesPresenter(mView);
}
Я в основном вызываю функцию в классе Presenter
, которая вызывает getJson()
(показано ниже), но, отлаживая ее, я вижу, что ни onRespone()
, ни onFailure()
не вызывается. Отладчик идет прямо к return null
.
Я убедился, что getClient()
возвращает правильного клиента и что запрос действителен.
У меня есть OkHttpSingleton
. Это GET
запрос:
public String getJson(String url, final IResult result) {
Request request = new Request.Builder()
.url(url)
.build();
getClient().newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}
@Override
public void onResponse(Call call, final Response response) throws IOException {
if (!response.isSuccessful()) {
throw new IOException("Unexpected code " + response);
}
result.getResult(response.body().string());
}
});
return null;
IResult
- это интерфейс, который передается в качестве аргумента.
Любой совет будет оценен.