routerLink
コンポーネントを angular 2 final でテストしようとしていますが、コンポーネントがディレクティブを使用しているため、エラーが発生します。次のエラーが表示されます。
「a」の既知のプロパティではないため、「routerLink」にバインドできません。
これはListComponent
テンプレートの関連コードです
<a
*ngFor="let item of data.list"
class="box"
routerLink="/settings/{{collectionName}}/edit/{{item._id}}">
そして、これが私のテストです。
import { TestBed } from '@angular/core/testing';
import { ListComponent } from './list.component';
import { defaultData, collectionName } from '../../config';
import { initialState } from '../../reducers/reducer';
const data = {
sort: initialState.sort,
list: [defaultData, defaultData],
};
describe(`${collectionName} ListComponent`, () => {
let fixture;
beforeEach(() => {
TestBed.configureTestingModule({
declarations: [
ListComponent,
],
}).compileComponents(); // compile template and css;
fixture = TestBed.createComponent(ListComponent);
fixture.componentInstance.data = data;
fixture.detectChanges();
});
it('should render 2 items in list', () => {
const el = fixture.debugElement.nativeElement;
expect(el.querySelectorAll('.box').length).toBe(3);
});
});
同様の質問に対するいくつかの回答を見ましたが、自分に合った解決策が見つかりませんでした。