2016-03-05 2 views
1

я тест структура, представленные ниже, я использую код Ajax называет поэтому я насмешливо, как представлено в jest tutorialпереустановку Аякс фиктивных звонков шутя тесты

describe('it behavior', function() { 
    it('is as it is', function() { 
    jQuery.ajax.mock.calls[0][0].success({ 
     data: [] 
    }); 
    ... 
    }); 
    it('is is not as it was', function() { 
    jQuery.ajax.mock.calls[1][0].success({ 
     data: [1, 2, 3] 
    }); 
    ... 
    }); 
}); 

Что беспокоит меня больше всего, это jQuery.ajax.mock.calls[X][0] в каждом случае, в основном потому, что я сделал опечатки или забыл увеличивать номер вызова в макете.

Возможно ли сбросить счетчик обратного вызова в afterEach обратный вызов или какой-либо шаблон для организации тестирования в этом случае? Предпочтительно без каких-либо дополнительных тестовых зависимостей.

ответ

2

Попробуйте это:

describe('something', function() { 
    beforeEach(function() { 
    jQuery.ajax = jest.genMockFunction() 
    }) 

    it('does something', function() { 
    // do something 
    }) 
}