Я пытаюсь проверить расширение chrome с помощью Jasmine, но у меня возникли проблемы с получением calls.length
и callCount
, чтобы вести себя так, как ожидалось. Оба случая возвращают undefined
.Жасмин calls.length и callCount не определены
Я включил образец кода и спецификации. Вот остальная часть кода, если это помогает: https://github.com/DruRly/kamikaze/tree/closeIdleTab
Как воспроизвести:
git clone https://github.com/DruRly/kamikaze/tree/closeIdleTab
cd kamikaze
open SpecRunner.html
спецификации/kamikazeSpec.js
describe("kamikaze", function() {
describe("closeIdleTabs", function(){
it("calls closeIdleTab for each tab received", function(){
spyOn(kamikaze, 'closeIdleTab');
kamikaze.closeIdleTabs([1,2,3]);
expect(kamikaze.closeIdleTab.calls.length).toBe(3);
})
})
})
SRC/kamikaze.js
kamikaze = {
...
closeIdleTabs: function(tabs){
tabs.forEach(function(tab){
test.closeIdleTab(tab);
})
},
closeIdleTab: function(tab){
if(tabTimeStamps[tab.id]){
var secondsSinceUpdated = getSecondsSinceUpdated(tab.id)
if(secondsSinceUpdated > (minutesUntilIdle * 60)){
chrome.tabs.remove(tab.id)
}
}
},
...
}
+10 за качество и формат вопроса. Большинство людей остановились бы после первых двух строк (буквально)! (Соответствующий код, ссылка на полный код и шаги для воспроизведения проблемы - я ненавижу тот факт, что было так легко ответить на это :)) – gkalpak
Спасибо @ExpertSystem! Почувствовал, что я схожу с ума. Я все еще могу быть, но я тоже смотрел устаревшие документы :) – Dru
Было бы неплохо, если бы репо было доступно для справки. – Brant