2015-07-16 6 views
0

Используя мой код:Неопределенное при попытке использовать Spy

it('should start application only once', function(done){ 
     var spy = sinon.spy(server, 'startup'); 

     var calledOnce = spy().calledOnce; 

     calledOnce.should.be.true; 

     done(); 
    }); 

Я получаю ошибку:

Cannot read property should of undefined.

calledOnce переменная не определена. Я делаю что-то неправильно в том, как я настраиваю шпиона и использую его. Как я могу это исправить?

Запуск - это метод в моем объекте, который я экспортировал из файла server.js.

ответ

1

Если вы хотите увидеть, если конкретная функция/метод был назван, вам нужно следить за ней перед тем она вызывается (иначе шпион не будет знать об этом):

var server = ... 
var spy = sinon.spy(server, 'startup'); 

server.startup(...); 

spy.calledOnce.should.be.true; 
Смежные вопросы