Почему классы Android не бросают заглушку! Исключения из конструкторов, вызванных из модульных тестовAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Почему классы Android не бросают заглушку! Исключения из конструкторов, вызванных из модульных тестов

Сообщение Anonymous »

Android -модульные тесты (не тест на приборы) работают на хост -машине и должны использовать фальшивую реализацию Android.jar (с заглушками), подобная документации. Задокументирован. < /p>

Код: Выделить всё

public final class Rect implements Parcelable {
@NonNull
public static final Parcelable.Creator CREATOR = null;
public int bottom;
public int left;
public int right;
public int top;

public Rect() {
throw new RuntimeException("Stub!");
}

public Rect(int left, int top, int right, int bottom) {
throw new RuntimeException("Stub!");
}

public Rect(@Nullable Rect r) {
throw new RuntimeException("Stub!");
}

public boolean equals(Object o) {
throw new RuntimeException("Stub!");
}

public int hashCode() {
throw new RuntimeException("Stub!");
}

public String toString() {
throw new RuntimeException("Stub!");
}

@NonNull
public String toShortString() {
throw new RuntimeException("Stub!");
}

@NonNull
public String flattenToString() {
throw new RuntimeException("Stub!");
}
//....
}
Но если я запускаю тесты и вызов rect () конструктор там, исключение на самом деле не бросается (только доступ к его методам).
Вопрос в том, в чем причина такого поведения? Неверен ли вывод декомпилятора или почему конструктор не бросается, как и ожидалось? /> Обновление: < /strong>
Я также заметил, что если я запускаю тест с заглушкой Gradle Configuration! Исключение не отброшено из конструктора, но если я запускаю тест с конфигурацией Kotest, оно брошено, как и ожидалось.

Подробнее здесь: https://stackoverflow.com/questions/762 ... alled-from
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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