I have created the simple unit test but it's thrown error
I don't think so it's related to Promise resolve or rejects.
here I added a code snippet. Let me know if you have any idea about that. Your help really appreciated. Thanks
Code
filterRowCol(Contxtdata): Promise<any> {
return new Promise((resolve, reject) => {
let Obj: any = {};
console.log("Contxtdata", Contxtdata);
this.hasMasterContext = false;
for (let i = 0; i < Contxtdata.length; i++) {
if (Contxtdata[i].Perspective.indexOf("/") != -1) {
let contextRow = Contxtdata[i].Perspective.split("/")[0].toLowerCase().trim();
let contextCol = Contxtdata[i].Perspective.split("/")[1].toLowerCase().trim();
console.log("Curent Row:", this.commonService.BodyJson.rows[this.commonService.Row].title);
if (contextRow == this.commonService.BodyJson.rows[this.commonService.Row].title.toLowerCase().trim()) {
if (contextCol == this.commonService.BodyJson.rows[this.commonService.Row].cols[this.commonService.Col].Title.toLowerCase().trim()) {
Obj = {
ID: Contxtdata[i].Id,
index: i
};
console.log("ReturnOBJ:", Obj);
}
}
}
if (Contxtdata[i].Perspective.toLowerCase().trim() == "master") {
this.hasMasterContext = true;
this.masterObj = {
ID: Contxtdata[i].Id,
index: i
};
}
}
if (Obj.ID) {
resolve(Obj);
}
else {
resolve(Obj);
}
});
}
Unit Test case
it('should closeChat', () => {
const Contxtdata = [
{
Perspective: "Test4/Demo41"
},
{
Perspective: "jk/pharma"
},
{
Perspective: "pass/fail"
}];
spyOn(service, "BodyJson").and.returnValue(Promise.resolve({
ID: 5,
index: 0
}))
const data = component.filterRowCol(Contxtdata);
console.log("data>>>>>>!!", data);
expect(data).toBeTruthy();
});