Как проверить, вызван ли метод до вызова другого - PullRequest
0 голосов
/ 06 июля 2018

У меня есть метод с именем mainMethod(), и он возвращает обещание. Этот метод содержит несколько методов m1(), m2() ..., m5(). Сейчас я делаю юнит-тест, используя sinon,

Я хочу проверить, вызван ли m1(), а m2() это , а не .

Поскольку у меня есть массив, который не пустой после вызова m1(), но он будет пустым после вызова m2().

Я хочу сделать проверку или проверку после вызова m1() и до вызова m2().

Возможно ли использовать sinon?

1 Ответ

0 голосов
/ 12 июля 2018

Да, использование Sinon возможно. Он имеет calledAfter и calledBefore.

http://sinonjs.org/releases/v6.1.3/spies/

Например

it('some testing', function() {
    var m1 = { method: function () {} };
    var m2 = { method: function () {} };

    var spyM1 = sinon.spy(m1, "method");
    var spyM2 = sinon.spy(m2, "method");

    m1.method(42);
    m2.method(1);

    assert(spyM1.calledBefore(spyM2));
    assert(spyM2.calledAfter(spyM1));
});
...