angular - 使用 Bootstrap 指令时,HttpTestingController expectOne 不起作用
问题描述
当我模仿对 Bootstrap 指令生成的元素的单击时,我无法在单元测试中模拟 HTTP 请求。
在这里,我有一个带有分页链接的组件。
@Component({
template: `
<ngb-pagination [collectionSize]="1" [pageSize]="1" [page]="1 (pageChange)="nextPg($event)"></ngb-pagination>
`
})
export class QuestionComponent {
public dataFromServer: string;
constructor(
private readonly httpClient : HttpClient
) { }
public nextPg() {
this.httpClient.get<string>('some_url')
.subscribe(x => this.dataFromServer = x);
}
}
而且我还进行了测试以验证 HTTP 调用。测试总是失败。
it('test', () => {
fixture.detectChanges();
const pageItem = fixture.nativeElement.querySelectorAll('.page-link')[1];
pageItem.click();
httpMock.expectOne('some_url');//Fails here
});
当我直接使用由指令生成的 HTML 时,一切都很好。
<ul class="pagination">
<li class="page-item disabled">
<a class="page-link"></a>
</li>
<li class="page-item">
<a class="page-link" (click)="nextPg()"> 1 </a>
</li>
<li class="page-item">
<a class="page-link"></a>
</li>
</ul>
解决方案
推荐阅读
- symfony - Symfony Form CollectionType 数组验证
- latex - 为什么在背面我错过了表格中的垂直边缘?
- jenkins - Jenkins 在运行作业之前运行 gcloud 命令
- mongodb - 如何关闭虚拟机的网卡
- ms-access - word MailMerge(来自 MS Access 数据源)动态表
- kibana - Kibana 7.7.1 - 保存的搜索不包括搜索字符串引号;用 %22 转义不起作用
- python - 在 Qt Designer (PyQt5) 生成的 html 中插入 Python 变量
- scala - 如何将 Protobuf 数据从 Flink 转发到 Kafka 和 stdout?
- crash - swiftui 这个崩溃报告是什么意思?
- wordpress - 类别永久链接中的类别 ID,woocommerce