-
Notifications
You must be signed in to change notification settings - Fork 52
[$compile:tpload] Failed to load template #1311
Copy link
Copy link
Closed
Description
The component I am testing is using the "templateUrl" to provide a template:
import { Component, Inject, Input, Output, EventEmitter, OnChanges } from 'ng-metadata/core';
@Component({
selector: 'diContactList',
templateUrl: 'src/app/portal/parties/contacts/list/contact-list.component.html'
})
export class ContactListComponent implements OnChanges {
Then I have a corresponding unit test:
import { bundle, getInjectableName, NgModule, Component } from 'ng-metadata/core';
describe('ContactListComponent', () => {
@Component({
selector: 'test-component',
template: `
<di-contact-list>
</di-contact-list>`
})
class TestComponent {
constructor() {}
}
@NgModule({
declarations: [TestComponent, ContactListComponent]
})
class TestNgModule { }
let $compile: ng.ICompileService;
let $rootScope: ng.IRootScopeService;
let $scope: ng.IScope;
let render: IRender<TestComponent>;
let sut: ContactListComponent;
beforeEach(() => {
const TestModule: string = bundle(TestNgModule).name;
ng.mock.module(TestModule);
});
beforeEach(ng.mock.inject(function($injector: ng.auto.IInjectorService) {
$compile = $injector.get<ng.ICompileService>('$compile');
$rootScope = $injector.get<ng.IRootScopeService>('$rootScope');
$scope = $rootScope.$new();
render = renderFactory($compile, $scope);
sut = render(ContactListComponent).ctrl;
}));
When run I am getting the following error:
Error: [$compile:tpload] Failed to load template: src/app/portal/parties/contacts/list/contact-list.component.html (HTTP status: undefined undefined)
http://errors.angularjs.org/1.6.5/$compile/tpload?p0=src%2Fapp%2Fportal%2Fparties%2Fcontacts%2Flist%2Fcontact-list.component.html&p1=undefined&p2=undefined
When I remove templateUrl or replace with template in the component, unit tests run correctly.
Reactions are currently unavailable