У меня проблема с попыткой запустить тест. Я хочу протестировать библиотеку, которая делает запросы ajax и возвращать обещание для каждого метода (get, post и т.д.).
В моем тесте у меня есть следующее:
var a = proxy.get("test")
.done(function () {
ok(true, "API call - GET - Success");
})
.fail(function () {
ok(false, "API call - GET - Success");
});
$.when(a).always(function () {
start();
});
Дело в том, что тест не запускается. И странно, что если я удалю эти строки, это сработает:
<script type="text/javascript" src="libs/sinon-1.9.1.js"></script>
<script type="text/javascript" src="libs/sinon-qunit-1.0.0.js"></script>
Консоль не показывает никаких ошибок, поэтому я не знаю, что делать. Может быть, силон делает некоторые странные вещи с помощью jQuery? Какие-нибудь советы?
Заранее спасибо.
Я нашел проблему. Дело в том, что мне не хватало fakeTimers.
Итак, вот так:
var clock = sinon.useFakeTimers();
var a = proxy.get("test")
.done(function () {
ok(true, "API call - GET - Success");
})
.fail(function () {
ok(false, "API call - GET - Success");
});
clock.tick(50);
$.when(a, b, c, d, e).always(function () {
start();
clock.restore();
});