Android

Passo 6 - Tornando o erro impossível de ser reintroduzido

O artigo detalha estratégias para evitar regressões de bugs em código, incluindo testes unitários que verifiquem corretamente o comportamento do matcher, design de APIs que eliminem a possibilidade de uso incorreto e a implementação de regras de lint/detekt para detectar padrões potencialmente problemáticos. Além disso, sugere-se a anotação com @CheckResult como uma medida mais leve para garantir que os resultados das funções não sejam descartados inadvertidamente.

Compartilhar
Medium

Passo 6 - Tornando o erro impossível de ser reintroduzido

Uma correção que depende de “lembrar-se de usar letIf da próxima vez

6d. A versão mais barata: @CheckResult

Você não pode retroativamente anotar SemanticsMatcher.and em si (é código de biblioteca). Mas você pode envolver qualquer chamada externa imutável que você depende no seu próprio pequeno extensor marcado com androidx.annotation.CheckResult:

Assim que seu código base chama apenas o wrapper anotado (não a função de biblioteca crua) dentro de blocos condicionais, o Android Lint sinalizará qualquer local de chamada onde o resultado é usado como uma declaração nua — incluindo exatamente o padrão que foi enviado aqui — sem nenhum regra detekt personalizada necessária. É uma linha mais leve de defesa inicial; combine com 6b para a verdadeira correção.

Fonte original

Conteúdo traduzido e adaptado pela redação do Notícias Mobile. Confira também a matéria na fonte original.

Leia a matéria completa