Migrate to Dart 3 (#2024)

Bump the min SDK to `3.0.0` across the test packages. It will not be
possible to test or run on older SDKs once we migrate to the next
version of `analyzer`.

Drop the `legacy_tests`. We will continue to have coverage for that
behavior with internal tests.

Add class modifiers to classes exposed through the public APIs of
`test`, `test_core`, or `test_api`. Internal classes that are not
exported through a public library have not been considered, and more
modifiers may be useful for these classes in the future.

Add class modifiers to the classes exposed from `checks`.

Deprecate the export of `Result` and `Status` from
`test_api/hooks_testing.dart`. These had been part of the API design
before the `State` enum was added, but the export was mistakenly left
in.

Change the `Compiler` class into an `enum`.

Make `Fake` a `mixin class` to avoid breaking existing usage.
57 files changed
tree: 8d6b2b00e086252756423b04c8a8db6bb857172e
  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