| Index: third_party/pkg/angular/test/mock/test_bed_spec.dart
|
| diff --git a/third_party/pkg/angular/test/mock/test_bed_spec.dart b/third_party/pkg/angular/test/mock/test_bed_spec.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..755ce6eeff3bef27330711de7b815fc418526775
|
| --- /dev/null
|
| +++ b/third_party/pkg/angular/test/mock/test_bed_spec.dart
|
| @@ -0,0 +1,45 @@
|
| +library angular.mock.test_bed_spec;
|
| +
|
| +import '../_specs.dart';
|
| +
|
| +main() =>
|
| +describe('test bed', () {
|
| + TestBed _;
|
| + Compiler $compile;
|
| + Injector injector;
|
| + Scope $rootScope;
|
| +
|
| + beforeEach(module((Module module) {
|
| + module..type(MyTestBedDirective);
|
| + return (TestBed tb) => _ = tb;
|
| + }));
|
| +
|
| + it('should allow for a scope-based compile', () {
|
| +
|
| + inject((Scope scope) {
|
| + Scope childScope = scope.$new();
|
| +
|
| + var element = $('<div my-directive probe="i"></div>');
|
| + _.compile(element, scope: childScope);
|
| +
|
| + Probe probe = _.rootScope.i;
|
| + var directiveInst = probe.directive(MyTestBedDirective);
|
| +
|
| + childScope.$destroy();
|
| +
|
| + expect(directiveInst.destroyed).toBe(true);
|
| + });
|
| + });
|
| +
|
| +});
|
| +
|
| +@NgDirective(selector: '[my-directive]')
|
| +class MyTestBedDirective {
|
| + bool destroyed = false;
|
| +
|
| + MyTestBedDirective(Scope scope) {
|
| + scope.$on(r'$destroy', () {
|
| + destroyed = true;
|
| + });
|
| + }
|
| +}
|
|
|