0.5.0-dev
- Add
Compiler class, exposed through backend.dart. - Support compiler identifiers in platform selectors.
- Add
compiler field to SuitePlatform. This will become required in the next major release. - BREAKING Add required
defaultCompiler and supportedCompilers fields to Runtime. - Add
package:test_api/hooks_testing.dart library for writing tests against code that uses package:test_api/hooks.dart.
0.4.18
- Don't run
tearDown until the test body and outstanding work is complete, even if the test has already failed.
0.4.17
- Deprecate
throwsNullThrownError, use throwsA(isA<TypeError>()) instead. The implementation has been changed to ease migrations. - Deprecate
throwsCyclicInitializationError and replace the implementation with Throws(TypeMatcher<Error>()). The specific exception no longer exists and there is no guarantee about what type of error will be thrown.
0.4.16
- Add the
experimental-chrome-wasm runtime. This is very unstable and will eventually be deleted, to be replaced by a --compiler flag. See https://github.com/dart-lang/test/issues/1776 for more information on future plans - Add
isWasm field to Runtime (defaults to false).
0.4.15
- Expand the pubspec description.
- Support
package:matcher version 0.12.13.
0.4.14
- Require Dart >= 2.18.0
- Support the latest
package:analyzer.
0.4.13
- Fix
printOnFailure output to be associated with the correct test.
0.4.12
0.4.11
- Support the latest version of
package:matcher.
0.4.10
- Add
Target to restrict TestOn annotation to library level.
0.4.9
- Add
ignoreTimeouts option to Suite, which disables all timeouts for all tests in that suite.
0.4.8
TestFailure implements Exception for compatibility with only_throw_exceptions.
0.4.7
- Remove logging about enabling the chain-stack-traces flag from the invoker.
0.4.6
- Give a better exception when using
markTestSkipped outside of a test. - Format stack traces if a formatter is available when serializing tests and groups from the remote listener.
0.4.5
- Add defaulting for older test backends that don't pass a configuration for the
allow_duplicate_test_names parameter to the remote listener.
0.4.4
- Allow disabling duplicate test or group names in the
Declarer.
0.4.3
- Use the latest
package:matcher.
0.4.2
- Update
analyzer constraint to >=1.5.0 <3.0.0.
0.4.1
- Give a better error when
printOnFailure is called from outside a test zone.
0.4.0
- Add libraries
scaffolding.dart, and expect.dart to allow importing as subset of the normal surface area. - Add new APIs in
hooks.dart to allow writing custom expectation frameworks which integrate with the test runner. - Add examples to
throwsA and make top-level throws... matchers refer to it. - Disable stack trace chaining by default.
- Fix
expectAsync function type checks. - Add
RemoteException, RemoteListener, StackTraceFormatter, and StackTraceMapper to backend.dart. - Breaking remove
Runtime.phantomJS - Breaking Add callback to get the suite channel in the
beforeLoad callback of RemoteListener.start. This is now used in place of using zones to communicate the value.
0.3.0
- Breaking
TestException.message is now nullable.- Fixes handling of
null messages in remote exceptions.
0.2.20
- Fix some strong null safety mode errors in the original migration.
0.2.19
- Stable release for null safety.
0.2.19-nullsafety.7
- Expand upper bound constraints for some null safe migrated packages.
0.2.19-nullsafety.6
- Fix
spawnHybridUri to respect language versioning of the spawned uri.
0.2.19-nullsafety.5
- Update SDK constraints to
>=2.12.0-0 <3.0.0 based on beta release guidelines.
0.2.19-nullsafety.4
- Allow prerelease versions of the 2.12 sdk.
0.2.19-nullsafety.3
- Add capability to filter to a single exact test name in
Declarer. - Add
markTestSkipped API.
0.2.19-nullsafety.2
- Allow
2.10 stable and 2.11.0-dev SDKs. - Annotate the classes used as annotations to restrict their usage to library level.
0.2.19-nullsafety
- Migrate to NNBD.
- The vast majority of changes are intended to express the pre-existing behavior of the code regarding to handling of nulls.
- Breaking Change:
GroupEntry.name is no longer nullable, the root group now has the empty string as its name.
- Add the
Fake class, available through package:test_api/fake.dart. This was previously part of the Mockito package, but with null safety it is useful enough that we decided to make it available through package:test. In a future release it will be made available directly through package:test_api/test_api.dart (and hence through package:test_core/test_core.dart and package:test/test.dart).
0.2.18+1 (Backport)
- Fix
spawnHybridUri to respect language versioning of the spawned uri.
0.2.18
- Update to
matcher version 0.12.9.
0.2.17
- Add
languageVersionComment on the MetaData class. This should only be present for test suites.
0.2.16
- Deprecate
LiveTestController.liveTest, the LiveTestController instance now implements LiveTest and can be used directly.
0.2.15
- Cancel any StreamQueue that is created as a part of a stream matcher once it is done matching.
- This fixes a bug where using a matcher on a custom stream controller and then awaiting the
close() method on that controller would hang.
- Avoid causing the test runner to hang if there is a timeout during a
tearDown callback following a failing test case.
0.2.14
- Bump minimum SDK to
2.4.0 for safer usage of for-loop elements.
0.2.13
- Work around a bug in the
2.3.0 SDK by avoiding for-loop elements at the top level.
0.2.12
- Link to docs on setting timeout when a test times out with the default duration.
- No longer directly depend on
package:pedantic.
0.2.11
- Extend the timeout for synthetic tests, e.g.
tearDownAll.
0.2.10
- Update to latest
package:matcher. Improves output for instances of private classes.
0.2.9
- Treat non-solo tests as skipped so they are properly reported.
0.2.8
- Remove logic which accounted for a race condition in state change. The logic was required because
package:sse used to not guarantee order. This is no longer the case.
0.2.7
- Prepare for upcoming
Stream<List<int>> changes in the Dart SDK. - Mark
package:test_api as deprecated to prevent accidental use.
0.2.6
- Don't swallow exceptions from callbacks in
expectAsync*. - Internal cleanup - fix lints.
- Fixed a race condition that caused tests to occasionally fail during
tearDownAll with the message (tearDownAll) - did not complete [E].
0.2.5
- Expose the
Metadata, PlatformSelector, Runtime, and SuitePlatform classes publicly through a new backend.dart import.
0.2.4
- Allow
stream_channel version 2.0.0.
0.2.3
- Update to matcher version
0.12.5.
0.2.2
- Require Dart SDK
>=2.1.0.
0.2.1
- Add
remote_listener.dart and suite_channel_manager.dart.
0.2.0
- Remove “runner” extensions.
0.1.1
- Update
stack_trace_formatter to fold test_api frames by default.
0.1.0
- Initial release of
test_api. Provides the basic API for writing tests and touch points for implementing a custom test runner.