AdevintaSpain / AdevintaSpain/Barista

Tests like *_breaksWhenNeeded are broken

Aberta
#197 4 comentários 0 reações 0 responsáveis Ver no GitHub
bug wip
Linguagem predominante
Kotlin
Estrelas
1.7k
Forks
119
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

There are some tests like `checkEnabledView_breaksWhenNeeded` with code like this:
```java
try {
assertEnabled(R.id.disabled_button);
fail();
} catch (Throwable expected) {
}
```

They're broken because they **always pass**. If `assertEnabled` doesn't fail, `fail()` will be invoked, which launches an `AssertionError`. The funny thing is that the `catch (Throwable expected)` also catches `AssertionError`, so the test will always be green.

It's as easy as changing the catch type to something like `RuntimeException`, which doesn't include `AssertionError`.

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Pesquise no repositório testes com nomes como checkEnabledView_breaksWhenNeeded e capturas de Throwable ao redor de assertions. Leia os arquivos de teste Android afetados e execute seus testes de instrumentação; o trabalho estará concluído quando AssertionError não for mais capturado e cada teste falhar quando a assertion esperada não falhar.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
android, kotlin
Domínio
mobile, testing
Tipo de issue
Bug
Dificuldade
2/5
Tempo estimado
1-3 horas
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.