Издевательная ошибка модернизации okhttp3Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Издевательная ошибка модернизации okhttp3

Сообщение Anonymous »

Я пытаюсь проверить фрагмент моего кода, который использует модернизацию, поэтому я создал интерфейс, чтобы «высмеивать» возвращение, он работает в частях, он может вызвать ответ Enqueue, однако не может преобразовать ответ response < /code>, следует ошибке: < /p>



< /blockquote>

интерфейс, чтобы уделить < /p>

public interface AuthRepositoryBoundary {

Call auth(String appKey, String projectId);

}
< /code>

Класс Макета < /p>

public class AuthSuccessTest implements AuthRepositoryBoundary {

@Override
public Call auth(String appKey, String projectId) {

ResponseBody body = ResponseBody.create(
MediaType.parse("application/json"),
MockAuth.AUTH_SUCCESS
);

Response aResponse = Response.success(body, new okhttp3.Response.Builder() //
.code(201)
.message("OK")
.body(body)
.protocol(Protocol.HTTP_1_1)
.request(new Request.Builder().url("http://localhost/").build())
.build());

return Calls.response(aResponse);
}

}
< /code>

реализация < /p>

@Override
public void auth(String appKey, String projectID) {
this.authRepository.auth(appKey, projectID).enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {
switch (response.code()) {
case 201:
authListener.onSuccess(response.body());
break;
case 401:
authListener.onUnauthorized("Unauthorized");
break;
default:
authListener.onError("Server error");
break;
}
}

@Override
public void onFailure(Call call, Throwable t) {
authListener.onError(t.getMessage());
}
});
}
< /code>

test: < /p>

@Test
public void when_success_authentication_should_be_invoke_on_success() {
this.authListenerMock = mock(AuthListener.class);
this.authRepositoryMock = mock(AuthRepositoryBoundary.class);

this.authSuccessTest = new AuthSuccessTest();

this.safetyRecognition = new SafetyRecognition()
.setCredentials("project_id", "key_id")
.auth(new Authentication(this.authListenerMock, this.authSuccessTest));

verify(this.authListenerMock).onSuccess(ArgumentMatchers.any(AuthResponse.class));
}


Подробнее здесь: https://stackoverflow.com/questions/501 ... ot-be-cast
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»