29 lines
776 B
JavaScript
29 lines
776 B
JavaScript
|
import {Map, MapWrapper, ListWrapper} from 'angular2/src/facade/collection';
|
||
|
import {Type, isPresent} from 'angular2/src/facade/lang';
|
||
|
|
||
|
import {Template} from 'angular2/src/core/annotations/template';
|
||
|
import {TemplateResolver} from 'angular2/src/core/compiler/template_resolver';
|
||
|
|
||
|
export class MockTemplateResolver extends TemplateResolver {
|
||
|
_cmpTemplates: Map;
|
||
|
|
||
|
constructor() {
|
||
|
super();
|
||
|
this._cmpTemplates = MapWrapper.create();
|
||
|
}
|
||
|
|
||
|
setTemplate(component: Type, template: Template) {
|
||
|
MapWrapper.set(this._cmpTemplates, component, template);
|
||
|
}
|
||
|
|
||
|
resolve(component: Type): Template {
|
||
|
var override = MapWrapper.get(this._cmpTemplates, component);
|
||
|
|
||
|
if (isPresent(override)) {
|
||
|
return override;
|
||
|
}
|
||
|
|
||
|
return super.resolve(component);
|
||
|
}
|
||
|
}
|