Pular para o conteúdo principal

use_test_throws_matchers

Saiba mais sobre a regra de lint use_test_throws_matchers.

Estável
Lançado no Dart 2.14

Use o matcher throwsA em vez de fail().

Detalhes

#

Use o matcher throwsA em vez de try-catch com fail().

RUIM:

dart
// sync code
try {
  someSyncFunctionThatThrows();
  fail('expected Error');
} on Error catch (error) {
  expect(error.message, contains('some message'));
}
​
// async code
try {
  await someAsyncFunctionThatThrows();
  fail('expected Error');
} on Error catch (error) {
  expect(error.message, contains('some message'));
}

BOM:

dart
// sync code
expect(
  () => someSyncFunctionThatThrows(),
  throwsA(isA<Error>().having((Error error) => error.message, 'message', contains('some message'))),
);
​
// async code
await expectLater(
  () => someAsyncFunctionThatThrows(),
  throwsA(isA<Error>().having((Error error) => error.message, 'message', contains('some message'))),
);

Ativar

#

Para ativar a regra use_test_throws_matchers, adicione use_test_throws_matchers em linter > rules no seu arquivo analysis_options.yaml:

analysis_options.yaml
yaml
linter:
  rules:
    - use_test_throws_matchers

Se você usa a sintaxe de mapa YAML para configurar as regras de lint, adicione use_test_throws_matchers: true em linter > rules:

analysis_options.yaml
yaml
linter:
  rules:
    use_test_throws_matchers: true

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.