Add --fail-fast flag (#2040)

Closes #1841

Add a `--fail-fast` flag which stops running test cases after the first
failure.

- in the engine, check for failed tests immediately after running them.
  when fast failures are enabled `close()` the engine after any failure.
  Teardowns and cleanups will run, and any concurrently running tests in
  other suits will finish, but no further tests will start.
- add the argument in `configuration` and parse it with the args.
- add a test with a failing case that prevents later tests from running.
11 files changed
tree: c170eca101a0e574f01736edf3569c1e77d725e0
  1. .github/
  2. integration_tests/
  3. pkgs/
  4. tool/
  5. .gitattributes
  6. .gitignore
  7. analysis_options.yaml
  8. CONTRIBUTING.md
  9. mono_repo.yaml
  10. README.md
README.md

Dart CI OpenSSF Scorecard

What's here?

Welcome! package:test is the standard testing library for Dart and Flutter. If you have questions about Dart testing, please see the docs for package:test. package:test_api and package:test_core are implementation details and generally not user-facing.

package:checks is a relatively new library for expressing test expectations. It's a more modern version of package:matcher and features a literate API.

Packages

PackageDescriptionVersion
checksA framework for checking values against expectations and building custom expectations.pub package
testA full featured library for writing and running Dart tests across platforms.pub package
test_apipub package
test_corepub package