tree 3494b06323cbe6a6105d59479ed5f6729124e7ee
parent 2214ebcf15910e9af42bca5d6b0153888e2b0a51
author Nate Bosch <nbosch1@gmail.com> 1600972069 -0700
committer GitHub <noreply@github.com> 1600972069 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJfbOUlCRBK7hj4Ov3rIwAAdHIIAAZTZy+OIiqVotmDtShtYZKA
 AuRh1rMMk6e5YNr5/4rLuHg9ukQdljiUpEtBRM1xwuofxrz4yEAVIP8OFcGLB9Qi
 M/wioIcqCEOZ0+8EIhN4OkHZWdFGFdz59LcnE7CyQiv8myaaQu6y96DBi/9uQerj
 Wj+mA3EgL2lo5YM9O6gIcrCuha3rFu3qFG/sWfFDgG3cwcjzmbMM9m5q2cjX83eE
 sHI+8URVIHogxhlvCWcUM4+ROX0KiKjpHSEdnvXkuVH7RIZhj2B2Y9e2F03EF/b2
 hfXd5WLp92RvI3i2tay5pttc3oVubYbJlD4yX3oerdOKSYgdBwNFKzYVXenXvrg=
 =e7mP
 -----END PGP SIGNATURE-----
 

Add capabilities for building direct test runners (#1332)

Towards #1310, #1328

Add `directRunTest` to configure a reporter and run tests directly in
the same isolate.

Add `enumerateTestCases` to collect test names without running them, and
`directRunSingleTest` to run a specific test by its full name. These
APIs ensure the uniqueness of test names to avoid ambiguity. This
restriction may be spread to tests run through the normal test runner as
well.

- Add `fullTestName` option on `Declarer`. When used, only the test (or
  tests if uniqueness is not checked separately) will be considered as a
  test case.
- Add `directRunTest`, `enumerateTestCases`, and `directRunSingleTest`
  APIs. These are kept under a `lib/src/` import for now, and any other
  package that uses these APIs should pin to a specific version of
  `package:test_core`. The details of these APIs might change without a
  major version bump.