@@ -0,0 +1,27 @@
|
||||
import 'package:angular2/test_lib.dart' show SpyObject;
|
||||
import 'package:angular2/core.dart'
|
||||
show ApplicationRef, LifeCycle, Injector, bind;
|
||||
import 'dart:js';
|
||||
|
||||
@proxy
|
||||
class SpyLifeCycle extends SpyObject implements LifeCycle {
|
||||
noSuchMethod(m) => super.noSuchMethod(m);
|
||||
}
|
||||
|
||||
@proxy
|
||||
class SpyApplicationRef extends SpyObject implements ApplicationRef {
|
||||
Injector injector;
|
||||
|
||||
SpyApplicationRef() {
|
||||
this.injector = Injector.resolveAndCreate([
|
||||
bind(LifeCycle).toClass(SpyLifeCycle)
|
||||
]);
|
||||
}
|
||||
|
||||
noSuchMethod(m) => super.noSuchMethod(m);
|
||||
}
|
||||
|
||||
void callNgProfilerTimeChangeDetection([config]) {
|
||||
context['ng']['profiler'].callMethod('timeChangeDetection',
|
||||
config != null ? [config] : []);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
import {SpyObject} from 'angular2/test_lib';
|
||||
import {ApplicationRef, LifeCycle, Injector, bind} from 'angular2/angular2';
|
||||
import {global} from 'angular2/src/core/facade/lang';
|
||||
|
||||
export class SpyApplicationRef extends SpyObject {
|
||||
injector;
|
||||
constructor() {
|
||||
super();
|
||||
this.injector = Injector.resolveAndCreate([bind(LifeCycle).toValue({tick: () => {}})]);
|
||||
}
|
||||
}
|
||||
|
||||
export function callNgProfilerTimeChangeDetection(config?): void {
|
||||
(<any>global).ng.profiler.timeChangeDetection(config);
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
import {
|
||||
afterEach,
|
||||
beforeEach,
|
||||
ddescribe,
|
||||
describe,
|
||||
expect,
|
||||
iit,
|
||||
inject,
|
||||
it,
|
||||
xit
|
||||
} from 'angular2/test_lib';
|
||||
|
||||
import {enableDebugTools, disableDebugTools} from 'angular2/tools';
|
||||
import {SpyApplicationRef, callNgProfilerTimeChangeDetection} from './spies';
|
||||
|
||||
export function main() {
|
||||
describe('profiler', () => {
|
||||
beforeEach(() => { enableDebugTools((<any>new SpyApplicationRef())); });
|
||||
|
||||
afterEach(() => { disableDebugTools(); });
|
||||
|
||||
it('should time change detection', () => { callNgProfilerTimeChangeDetection(); });
|
||||
|
||||
it('should time change detection with recording',
|
||||
() => { callNgProfilerTimeChangeDetection({'record': true}); });
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user