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



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Да, использование 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));
});
цепляйте обещания.