为什么我不能在.spec.ts中调用组件的功能?
Why I cant call a component's function in .spec.ts?
我正在尝试对调用另一个函数的函数进行单元测试。这是被调用的函数
detailsFiltersClosed(recentSearch: boolean): void {
this.arrowUp = false;
this.filterData = this.loadsFilter.getData();
const isTypeAll: boolean = this.filterData.loadType === Capacity.Both;
const loadType: string = isTypeAll ? DetailsFiltersResources.All : this.filterData.loadType;
}
这是调用它的函数:
searchAndCloseDetails(){
this.detailsFiltersClosed(false);
setTimeout(() => {
this.trigger.closeMenu();
},0);
}
变量arrowUp
是组件的布尔值属性。
我写了这个单元测试:
describe('searchAndCloseDetails', () => {
let arrow = component.arrowUp = true;
component.searchAndCloseDetails();
expect(component.arrowUp).toEqual(false);
});
但是它失败了:TypeError: "Cannot read 属性 'loadType' of undefined"
你能帮我找出我的错误在哪里吗?
谢谢。
可能是因为 this.filterData 未定义。
const loadType: string = isTypeAll ? DetailsFiltersResources.All : this.filterData.loadType;
我正在尝试对调用另一个函数的函数进行单元测试。这是被调用的函数
detailsFiltersClosed(recentSearch: boolean): void {
this.arrowUp = false;
this.filterData = this.loadsFilter.getData();
const isTypeAll: boolean = this.filterData.loadType === Capacity.Both;
const loadType: string = isTypeAll ? DetailsFiltersResources.All : this.filterData.loadType;
}
这是调用它的函数:
searchAndCloseDetails(){
this.detailsFiltersClosed(false);
setTimeout(() => {
this.trigger.closeMenu();
},0);
}
变量arrowUp
是组件的布尔值属性。
我写了这个单元测试:
describe('searchAndCloseDetails', () => {
let arrow = component.arrowUp = true;
component.searchAndCloseDetails();
expect(component.arrowUp).toEqual(false);
});
但是它失败了:TypeError: "Cannot read 属性 'loadType' of undefined"
你能帮我找出我的错误在哪里吗?
谢谢。
可能是因为 this.filterData 未定义。
const loadType: string = isTypeAll ? DetailsFiltersResources.All : this.filterData.loadType;