如何使用 Jasmine Karm 测试以角度测试模板驱动表单的 resetForm 函数?

时间:2021-01-23 14:01:30

标签: javascript angular karma-jasmine angular-forms angular-unit-test

我正在尝试对 resetform() 函数 [用作 TemplateVar.resetForm()] 进行单元测试,其中 loginVar 用作 angular 模板驱动表单的模板变量。 我没有得到任何来源 oridea ho 来做到这一点。请指导。提前致谢!

component.html

<form #loginVar="ngForm">
```code form fields```
</form>
<button mat-raised-button color="primary" (click)="onReset(loginVar)">Reset</button>

component.ts

  onReset(e) {
    e.resetForm();
  }

1 个答案:

答案 0 :(得分:1)

  it('should reset form', () => {
    const debugElement = fixture.debugElement;
    const form: NgForm = debugElement.children[0].injector.get(NgForm);
    const spy = spyOn(form, 'resetForm');
    component.ClearForm(form);
    expect(spy).toHaveBeenCalled();
  });

这奏效了!