47 lines
1.2 KiB
Markdown
47 lines
1.2 KiB
Markdown
|
Contains helpers to run unit tests for angular2 components and injectables,
|
||
|
backed by the `package:test` [library](https://pub.dartlang.org/packages/test).
|
||
|
|
||
|
Usage
|
||
|
-----
|
||
|
|
||
|
|
||
|
Update the dev dependencies in your `pubspec.yaml` to include the angular testing
|
||
|
and test packages:
|
||
|
|
||
|
```yaml
|
||
|
dev_dependencies:
|
||
|
test: '^0.12.6'
|
||
|
angular2_testing: any
|
||
|
|
||
|
```
|
||
|
|
||
|
Then in your test files, use angular2_testing helpers in place of `setUp` and `test`:
|
||
|
|
||
|
```dart
|
||
|
import 'package:test/test.dart';
|
||
|
import 'package:angular2_testing/angular2_testing.dart';
|
||
|
|
||
|
void main() {
|
||
|
// This must be called at the beginning of your tests.
|
||
|
initAngularTests();
|
||
|
|
||
|
// Initialize the injection tokens you will use in your tests.
|
||
|
setUpProviders(() => [provide(MyToken, useValue: 'my string'), TestService]);
|
||
|
|
||
|
// You can then get tokens from the injector via ngSetUp and ngTest.
|
||
|
ngSetUp((TestService testService) {
|
||
|
testService.initialize();
|
||
|
});
|
||
|
|
||
|
ngTest('can grab injected values', (@Inject(MyToken) token, TestService testService) {
|
||
|
expect(token, equals('my string'));
|
||
|
expect(testService.status, equals('ready'));
|
||
|
});
|
||
|
}
|
||
|
```
|
||
|
|
||
|
Examples
|
||
|
--------
|
||
|
|
||
|
A sample test is available in `test/angular2_testing_test.dart`.
|