我想检查一个Angular mat-nav-list
是否包含一个元素。
我可以用fixture.debugElement.query(By.css('.items'))
选择它,但我不知道如何检查它是否包含任何东西。
我的模板:
<mat-nav-list class="items">
<a class="list-item" mat-list-item *ngFor="let item of items">
<app-item-display [item]="item"></app-item-display>
</a>
</mat-nav-list>
在我的测试中,我注入1个项目并期望它渲染。虽然组件确实包含一个项目,但我想检查它是否在列表中呈现。
尝试queryAll
const items= fixture.debugElement.queryAll(By.css('.list-item'));
然后你可以在伪造物品清单后检查长度是否正确
expect(items.length).toBe(2) // or your fake data length