Require.js file
import $ from 'jquery';
import _ from 'underscore';
import requestSettings from '../config/requestSettings';
export default function () {
var args = Array.prototype.slice.call(arguments);
var mergedOptions = _.extend({}, requestSettings, args[0]);
if (requestSettings.headers && arguments[0].headers) {
mergedOptions.headers = _.extend({}, requestSettings.headers, args[0].headers);
}
args[0] = mergedOptions;
return $.ajax.apply($, args);
}
Ds.js
cancelExportDashboard: function () {
var self = this;
if (self.dashboard.currentExportId) {
return request({
url: this.contextPath + "xyz" + self.dashboard.currentExportId,
method: "DELETE"
}).done(function () {
self.dashboard.currentExportId = undefined;
}).fail(function () {
self.dashboard.currentExportId = undefined;
});
}
return new $.Deferred().resolve();
}
var args = Array.prototype.slice.call(arguments);
var mergedOptions = _.extend({}, requestSettings, args[0]);
if (requestSettings.headers && arguments[0].headers) {
mergedOptions.headers = _.extend({}, requestSettings.headers, args[0].headers);
}
args[0] = mergedOptions;
return $.ajax.apply($, args);
}
file : dashboard.js
cancelDashboard: function () {
var self = this;
if (self.dashboard.currentExportId) {
return request({
url: this.contextPath + "/rest_v2/dashboardExecutions/" + self.dashboard.currentExportId,
method: "DELETE"
}).done(function () {
self.dashboard.currentExportId = undefined;
}).fail(function () {
self.dashboard.currentExportId = undefined;
});
}
return new $.Deferred().resolve();
}
Я пишу тестовый блок для функции cancelDashboard. Запрос является анонимной функцией, записанной в файле запроса. js и импортированной в файл Ds. js. я использовал useFakeXMLHttpRequest для возврата запроса в качестве resol (), но он все еще не находится в состоянии готовности.
Не могли бы вы предложить, как использовать sinon для покрытия состояния готовности для этого запроса вызова.