Нам нужно протестировать функцию, которая оценивает верхнюю позицию элемента. В следующем примере элемент с идентификатором «test».
function xxx(){
var element = $('#test');
return element[0].getBoundingClientRect().top;
}
Чтобы протестировать эту функцию с жасмином, мы попробовали следующий тестовый подход:
var myObj = {
name: 'test',
getBoundingClientRect: function () {
return {top: 100}
}
}
spyOn($('#test'), 'getBoundingClientRect').and.returnValue([myObj]);
и получите ошибку:
Error: <spyOn> : getBoundingClientRect() method does not exist
Usage: spyOn(<object>, <methodName>) (line 4740)
element[0]
(и, таким образом, получитьBoundingClientRect, установив шпион на jQuery.prototype.init, см. ), но в этом нет необходимости. Здесь будет работать прямое издевательство над getBoundingClientRect. 14.02.2018