首页 > 解决方案 > 如何在角度单元测试中传递模拟日期事件值

问题描述

我有一个需要 datepicker 事件中的日期的函数。我使用 matdatepicker 从 UI 中选择日期。

我想在 onDateSelected() 函数上传递日期事件值。

任何人都可以帮助我传递日期事件值以通过我的单元测试用例。

我尝试了下面的代码,但它不会工作

我的功能

 onDateSelected(event: MatDatepickerInputEvent<Date>) {
    const dts = event.value;
    const startDate = moment(dts).format('MM/DD/YYYY');
    this.details.controls.contractStartDate.setValue(startDate);
    this.selectedDate = this.details.get('contractStartDate').value;
    this.selectedDate = event.value;
  }

单元测试代码

  it('should check ondate selected event', () => {
    const date = new Date(10/03/2019);
    component.onDateSelected(date);
    fixture.detectChanges();
    expect(component.details.get('contractStartDate').value.toString()).toEqual(date);
  });

标签: angularjasminekarma-jasmine

解决方案


const date: any = { value : new Date(10/03/2019) };

只需看看你是如何编写函数的,并遵循对象属性。


推荐阅读