无法在玩笑测试

问题描述

我正在使用引导程序中的简单输入:

<ng-template #listSelectionFormatter let-r="result" let-t="term">
    <ngb-highlight [result]="r.nameAndWwid()" [term]="t"></ngb-highlight>
</ng-template>

<input [ngbTypeahead]="search" [resultTemplate]="listSelectionFormatter" ... >

现在我想在我的测试中验证输入是否链接到该格式化程序并且格式没有改变,所以我尝试了以下操作。最后的期望失败说:

错误:预期元素具有文本 'dd0801c2-7af2-47ee-b7a2-ac3ed00ff3d5 - 5',但具有 ''

这里似乎一切都应该正确连接。我错过了什么?

it('template shows name and WWID',() => {
    const wwid = Math.floor(Math.random() * 10) + 1
    const name = GenerateUuid()
    const worker = WorkerDTO.fromJson({active: true,name: name,wwid: wwid})
    expect(worker.nameAndWwid()).toBe(`${name} - ${wwid}`)

    jest.spyOn(component,'search')
        .mockImplementation(() => of([worker]))

    expect(spectator.query(NgbHighlight)).not.toExist()

    spectator.typeInElement(worker.name!,'input')

    const highlight = spectator.query(NgbHighlight)
    expect(highlight).toExist()
    expect(highlight?.term).toBe(worker.name)
    expect(highlight?.result).toContainText(worker.nameAndWwid())
})

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)