gpt4 book ai didi

javascript - 如何监视原生 JavaScript 函数?比如.find()?

转载 作者:行者123 更新时间:2023-12-01 00:51:31 24 4
gpt4 key购买 nike

我正在尝试在以下内容中模拟 this.editedComponentDetailsData.find :

editButtonClicked(event) {
let rowData = this.editedComponentDetailsData.find((row) => {
return row.operationalSequenceNumber == this.rowKey;
})
}

这不起作用:

 it('should do something', () => {
let result=spyOn(subject.editedComponentDetailsData.prototype,'find').and.returnValue({prop1:''});
});

最佳答案

只需为 editedComponentDetailsData 分配一个像空数组一样可迭代的属性,然后您就可以监视查找,但您只需在没有原型(prototype)的情况下访问它,就像在组件内部一样。

beforeEach(() => {
TestBed.resetTestEnvironment();
TestBed.initTestEnvironment(BrowserDynamicTestingModule,
platformBrowserDynamicTesting())

TestBed.configureTestingModule({
declarations: [AppComponent],
providers: [
AppComponent
],

schemas: [NO_ERRORS_SCHEMA]
});
fixture = TestBed.createComponent(AppComponent);
subject = fixture.componentInstance;
subject.editedComponentDetailsData=[]; //mock with empty array
});
it('should do something', () => {
let result=spyOn(subject.editedComponentDetailsData,'find').and.returnValue({prop1:''}); //the spy
});

关于javascript - 如何监视原生 JavaScript 函数?比如.find()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56933483/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com