Skip to content

Commit 7b94bbf

Browse files
committed
feat(testability): Expose function getAllAngularTestabilities
1 parent 71ea199 commit 7b94bbf

File tree

4 files changed

+13
-0
lines changed

4 files changed

+13
-0
lines changed

modules/angular2/globals.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ interface BrowserNodeGlobal {
2626
Reflect: any;
2727
zone: Zone;
2828
getAngularTestability: Function;
29+
getAllAngularTestabilities: Function;
2930
setTimeout: Function;
3031
clearTimeout: Function;
3132
setInterval: Function;

modules/angular2/src/core/testability/get_testability.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,5 +86,11 @@ class GetTestability {
8686
Testability testability = registry.findTestabilityInTree(elem);
8787
return _jsify(new PublicTestability(testability));
8888
});
89+
js.context['getAllAngularTestabilities'] = _jsify(() {
90+
List<Testability> testabilities = registry.getAllTestabilities();
91+
List<PublicTestability> publicTestabilities =
92+
testabilities.map((testability) => new PublicTestability(testability));
93+
return _jsify(publicTestabilities);
94+
});
8995
}
9096
}

modules/angular2/src/core/testability/get_testability.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,9 @@ export class GetTestability {
2323
}
2424
return new PublicTestability(testability);
2525
};
26+
global.getAllAngularTestabilities = function(): List<PublicTestability> {
27+
var testabilities = registry.getAllTestabilities();
28+
return testabilities.map((testability) => { return new PublicTestability(testability); });
29+
};
2630
}
2731
}

modules/angular2/src/core/testability/testability.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,8 @@ export class TestabilityRegistry {
8282
this._applications.set(token, testability);
8383
}
8484

85+
getAllTestabilities(): List<Testability> { return MapWrapper.values(this._applications); }
86+
8587
findTestabilityInTree(elem: Node): Testability {
8688
if (elem == null) {
8789
return null;

0 commit comments

Comments
 (0)