Я пытался написать модульный тест, будучи новым для субъекта, в платформе Jasmine Given, которая проверяет, что значение, вставленное в document.getElementById ("input"), фактически является тем же значением в параметрах для updateDisplay () функция.
Однако этот тест не проходит. Я пытаюсь выяснить, верен ли мой шпионский звонок, но сейчас я бью стену. См. Ошибку
См. Мой INDEXSPE C .TS Код файла:
/// <reference path="../src/index.ts" />
describe("index", () => {
Given(() => {
var dummyElement = document.createElement('input');
dummyElement.setAttribute('id','input');
document.getElementById = jasmine.createSpy('HTMLInputElement').and.returnValue(dummyElement);
});
describe("updateDisplay(Parameter)", () =>{
describe("Parameter:number", () => {
let returnValue:number;
When(() => {
returnValue = updateDisplay(5)
})
Then(() => expect(returnValue).toBe(5));
});
});
См. INDEX.TS Фрагмент кода файла:
function updateDisplay(value:any) :any{
let inputValue = (<HTMLInputElement>document.getElementById("input"));
inputValue.value += value;
}
см. ИНДЕКС. HTML Фрагмент кода файла:
<input class="CalcInput Button5 number" id="five" alt="5" src="art/but-5.png" type="image" onclick="updateDisplay(5)"></input>
Просто повторюсь, я новичок в среде Jasmine.