test 0.12.8 test: ^0.12.8 copied to clipboard
A library for writing dart unit tests.
0.12.8 #
-
Organize the
--help
output into sections. -
Add a
--timeout
flag.
0.12.7 #
-
Add the ability to re-run tests while debugging. When the browser is paused at a breakpoint, the test runner will open an interactive console on the command line that can be used to restart the test.
-
Add support for passing any object as a description to
test()
andgroup()
. These objects will be converted to strings. -
Add the ability to tag tests. Tests with specific tags may be run by passing the
--tags
command-line argument, or excluded by passing the--exclude-tags
parameter.This feature is not yet complete. For now, tags are only intended to be added temporarily to enable use-cases like focusing on a specific test or group. Further development can be followed on the issue tracker.
-
Wait for a test's tear-down logic to run, even if it times out.
0.12.6+2 #
- Declare compatibility with
http_parser
2.0.0.
0.12.6+1 #
- Declare compatibility with
http_multi_server
2.0.0.
0.12.6 #
-
Add a machine-readable JSON reporter. For details, see the protocol documentation.
-
Skipped groups now properly print skip messages.
0.12.5+2 #
- Declare compatibility with Dart 1.14 and 1.15.
0.12.5+1 #
- Fixed a deadlock bug when using
setUpAll()
andtearDownAll()
.
0.12.5 #
-
Add
setUpAll()
andtearDownAll()
methods that run callbacks before and after all tests in a group or suite. Note that these methods are for special cases and should be avoided—they make it very easy to accidentally introduce dependencies between tests. UsesetUp()
andtearDown()
instead if possible. -
Allow
setUp()
andtearDown()
to be called multiple times within the same group. -
When a
tearDown()
callback runs after a signal has been caught, it can now schedule out-of-band asynchronous callbacks normally rather than having them throw exceptions. -
Don't show package warnings when compiling tests with dart2js. This was accidentally enabled in 0.12.2, but was never intended.
0.12.4+9 #
- If a
tearDown()
callback throws an error, outertearDown()
callbacks are still executed.
0.12.4+8 #
- Don't compile tests to JavaScript when running via
pub serve
on Dartium or content shell.
0.12.4+7 #
- Support
http_parser
1.0.0.
0.12.4+6 #
- Fix a broken link in the README.
0.12.4+5 #
- Internal changes only.
0.12.4+4 #
- Widen the Dart SDK constraint to include
1.13.0
.
0.12.4+3 #
- Make source maps work properly in the browser when not using
--pub-serve
.
0.12.4+2 #
- Fix a memory leak when running many browser tests where old test suites failed to be unloaded when they were supposed to.
0.12.4+1 #
- Require Dart SDK >=
1.11.0
andshelf
>=0.6.0
, allowingtest
to remove various hacks and workarounds.
0.12.4 #
-
Add a
--pause-after-load
flag that pauses the test runner after each suite is loaded so that breakpoints and other debugging annotations can be added. Currently this is only supported on browsers. -
Add a
Timeout.none
value indicating that a test should never time out. -
The
dart-vm
platform selector variable is nowtrue
for Dartium and content shell. -
The compact reporter no longer prints status lines that only update the clock if they would get in the way of messages or errors from a test.
-
The expanded reporter no longer double-prints the descriptions of skipped tests.
0.12.3+9 #
- Widen the constraint on
analyzer
to include0.26.0
.
0.12.3+8 #
- Fix an uncaught error that could crop up when killing the test runner process at the wrong time.
0.12.3+7 #
- Add a missing dependency on the
collection
package.
0.12.3+6 #
This version was unpublished due to issue 287.
-
Properly report load errors caused by failing to start browsers.
-
Substantially increase browser timeouts. These timeouts are the cause of a lot of flakiness, and now that they don't block test running there's less harm in making them longer.
0.12.3+5 #
This version was unpublished due to issue 287.
- Fix a crash when skipping tests because their platforms don't match.
0.12.3+4 #
This version was unpublished due to issue 287.
-
The compact reporter will update the timer every second, rather than only updating it occasionally.
-
The compact reporter will now print the full, untruncated test name before any errors or prints emitted by a test.
-
The expanded reporter will now always print the full, untruncated test name.
0.12.3+3 #
This version was unpublished due to issue 287.
- Limit the number of test suites loaded at once. This helps ensure that the test runner won't run out of memory when running many test suites that each load a large amount of code.
0.12.3+2 #
This version was unpublished due to issue 287.
-
Improve the display of syntax errors in VM tests.
-
Work around a Firefox bug. Computed styles now work in tests on Firefox.
- Fix a bug where VM tests would be loaded from the wrong URLs on Windows (or in special circumstances on other operating systems).
0.12.3+1 #
- Fix a bug that caused the test runner to crash on Windows because symlink resolution failed.
0.12.3 #
-
If a future matched against the
completes
orcompletion()
matcher throws an error, that error is printed directly rather than being wrapped in a string. This allows such errors to be captured using the Zone API and improves formatting. -
Improve support for Polymer tests. This fixes a flaky time-out error and adds support for Dartifying JavaScript stack traces when running Polymer tests via
pub serve
. -
In order to be more extensible, all exception handling within tests now uses the Zone API.
-
Add a heartbeat to reset a test's timeout whenever the test interacts with the test infrastructure.
-
expect()
,expectAsync()
, andexpectAsyncUntil()
throw more useful errors if called outside a test body.
0.12.2 #
-
Convert JavaScript stack traces into Dart stack traces using source maps. This can be disabled with the new
--js-trace
flag. -
Improve the browser test suite timeout logic to avoid timeouts when running many browser suites at once.
0.12.1 #
- Add a
--verbose-trace
flag to include core library frames in stack traces.
0.12.0 #
Test Runner #
0.12.0
adds support for a test runner, which can be run via pub run test:test
(or pub run test
in Dart 1.10). By default it runs all files
recursively in the test/
directory that end in _test.dart
and aren't in a
packages/
directory.
The test runner supports running tests on the Dart VM and many different
browsers. Test files can use the @TestOn
annotation to declare which platforms
they support. For more information on this and many more new features, see the
README.
Removed and Changed APIs #
As part of moving to a runner-based model, most test configuration is moving out
of the test file and into the runner. As such, many ancillary APIs have been
removed. These APIs include skip_
and solo_
functions, Configuration
and
all its subclasses, TestCase
, TestFunction
, testConfiguration
,
formatStacks
, filterStacks
, groupSep
, logMessage
, testCases
,
BREATH_INTERVAL
, currentTestCase
, PASS
, FAIL
, ERROR
, filterTests
,
runTests
, ensureInitialized
, setSoloTest
, enableTest
, disableTest
, and
withTestEnvironment
.
FailureHandler
, DefaultFailureHandler
, configureExpectFailureHandler
, and
getOrCreateExpectFailureHandler
which used to be exported from the matcher
package have also been removed. They existed to enable integration between
test
and matcher
that has been streamlined.
A number of APIs from matcher
have been into test
, including: completes
,
completion
, ErrorFormatter
, expect
,fail
, prints
, TestFailure
,
Throws
, and all of the throws
methods. Some of these have changed slightly:
-
expect
no longer has a namedfailureHandler
argument. -
expect
added an optionalformatter
argument. -
completion
argumentid
renamed todescription
.
##0.11.5+1
- Internal code cleanups and documentation improvements.
##0.11.5
- Bumped the version constraint for
matcher
.
##0.11.4
- Bump the version constraint for
matcher
.
##0.11.3
- Narrow the constraint on matcher to ensure that new features are reflected in unittest's version.
##0.11.2
- Prints a warning instead of throwing an error when setting the test configuration after it has already been set. The first configuration is always used.
##0.11.1+1
- Fix bug in withTestEnvironment where test cases were not reinitialized if called multiple times.
##0.11.1
- Add
reason
named argument toexpectAsync
andexpectAsyncUntil
, which has the same definition asexpect
'sreason
argument. - Added support for private test environments.
##0.11.0+6
- Refactored package tests.
##0.11.0+5
- Release test functions after each test is run.
##0.11.0+4
- Fix for 20153
##0.11.0+3
- Updated maximum
matcher
version.
##0.11.0+2
- Removed unused files from tests and standardized remaining test file names.
##0.11.0+1
- Widen the version constraint for
stack_trace
.
##0.11.0
- Deprecated methods have been removed:
expectAsync0
,expectAsync1
, andexpectAsync2
- useexpectAsync
insteadexpectAsyncUntil0
,expectAsyncUntil1
, andexpectAsyncUntil2
- useexpectAsyncUntil
insteadguardAsync
- no longer neededprotectAsync0
,protectAsync1
, andprotectAsync2
- no longer needed
matcher.dart
andmirror_matchers.dart
have been removed. They are now in thematcher
package.mock.dart
has been removed. It is now in themock
package.
##0.10.1+2
- Fixed deprecation message for
mock
.
##0.10.1+1
- Fixed CHANGELOG
- Moved to triple-slash for all doc comments.
##0.10.1
- DEPRECATED
matcher.dart
andmirror_matchers.dart
are now in thematcher
package.mock.dart
is now in themock
package.
equals
now allows a nested matcher as an expected list element or map value when doing deep matching.expectAsync
andexpectAsyncUntil
now support up to 6 positional arguments and correctly handle functions with optional positional arguments with default values.
##0.10.0
- Each test is run in a separate
Zone
. This ensures that any exceptions that occur is async operations are reported back to the source test case. - DEPRECATED
guardAsync
,protectAsync0
,protectAsync1
, andprotectAsync2
- Running each test in a
Zone
addresses the need for these methods.
- Running each test in a
- NEW!
expectAsync
replaces the now deprecatedexpectAsync0
,expectAsync1
andexpectAsync2
- NEW!
expectAsyncUntil
replaces the now deprecatedexpectAsyncUntil0
,expectAsyncUntil1
andexpectAsyncUntil2
TestCase
:- Removed properties:
setUp
,tearDown
,testFunction
enabled
is now get-only- Removed methods:
pass
,fail
,error
- Removed properties:
interactive_html_config.dart
has been removed.runTests
,tearDown
,setUp
,test
,group
,solo_test
, andsolo_group
now throw aStateError
if called while tests are running.rerunTests
has been removed.