Вот фрагмент кода, у меня возникают проблемы при попытке получить полное покрытие для этого classMethod () с Jasmine. Я пытался использовать Jasmine.clock (). Tick () и просто тестировал изменения в переменной A, но я получаю неопределенный результат при тестировании toBeDefined () или .not.toBeDefined
class A() {
let variableA;
classMethod(){
VariableB;
const func2 = () => {
// Do something to Variable A
VariableA = changed_data
clearInterval(VariableB)
}
VariableB = setInterval(func2, 100);
}
}
Юнит-тестирование пока что
// obj является экземпляром класса
it('the variable should change within the class method', () => {
spyOn(obj, 'classMethod').and.callThrough();
expect(obj.VariableA).toBe(undefined); // (this works by itself) tried toBeUndefined() here
obj.classMethod();
jasmine.clock().tick(101);
expect(obj.VariableA).not.toBe(undefined); // tried toBeDefined() as well
})