Вот мой код JS
launchTask(taskId)
{
const taskIds = window.external.MyObjectFactory("INDEXED");
taskIds.add(taskId);
}
А вот как я пытаюсь создать шпиона и написать свою спецификацию для вышеупомянутой функции.
describe("The launchTask function", () => {
beforeEach(() => {
global.external.MyObjectFactory= jasmine.any(Function);
spyOn(global.external, 'MyObjectFactory').and.callThrough();
jasmine.createSpyObj("global.external.MyObjectFactory", ["add"]);
});
it("Scene 1", () => {
launchTask(123);
expect(global.external.MyObjectFactory).toHaveBeenCalledWith("INDEXED")
expect(global.external.MyObjectFactory("INDEXED").add).toHaveBeenCalledWith(123)
});
});
Первое ожидание проходит без каких-либо ошибок, тогда как второе ожидание дает мне ошибку "plan.apply не является функцией"