2016-02-14 22:00:01 +03:00
|
|
|
module('Defaults - Ajax');
|
|
|
|
|
|
|
|
test('options are merged recursively with default options', function (assert) {
|
|
|
|
var defaults = require('select2/defaults');
|
|
|
|
|
|
|
|
var ajaxDelay = 250;
|
|
|
|
var ajaxUrl = 'http://www.test.com';
|
|
|
|
|
|
|
|
var mergedOptions;
|
|
|
|
|
|
|
|
defaults.set('ajax--delay', ajaxDelay);
|
|
|
|
|
|
|
|
mergedOptions = defaults.apply({
|
|
|
|
ajax: {
|
|
|
|
url: ajaxUrl
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
assert.equal(
|
|
|
|
mergedOptions.ajax.delay,
|
|
|
|
ajaxDelay,
|
|
|
|
'Ajax default options are present on the merged options'
|
|
|
|
);
|
|
|
|
|
|
|
|
assert.equal(
|
|
|
|
mergedOptions.ajax.url,
|
|
|
|
ajaxUrl,
|
|
|
|
'Ajax provided options are present on the merged options'
|
|
|
|
);
|
|
|
|
|
|
|
|
defaults.reset();
|
2016-05-19 01:42:07 +03:00
|
|
|
});
|
|
|
|
|
|
|
|
test('more than one default option can be changed via set()', function(assert) {
|
|
|
|
var defaults = require('select2/defaults');
|
|
|
|
var ajaxDelay = 123;
|
2016-05-19 19:20:46 +03:00
|
|
|
var dataDataType = 'xml';
|
2016-05-19 01:42:07 +03:00
|
|
|
defaults.set('ajax--delay', ajaxDelay);
|
2016-05-19 18:40:32 +03:00
|
|
|
defaults.set('ajax--data-type', dataDataType);
|
2016-05-19 01:42:07 +03:00
|
|
|
|
|
|
|
assert.equal(
|
|
|
|
defaults.defaults.ajax.delay,
|
2016-05-19 18:40:32 +03:00
|
|
|
ajaxDelay,
|
2016-05-19 01:42:07 +03:00
|
|
|
'Both ajax.delay and ajax.dataType present in defaults');
|
|
|
|
assert.equal(
|
|
|
|
defaults.defaults.ajax.dataType,
|
|
|
|
dataDataType,
|
|
|
|
'Both ajax.delay and ajax.dataType present in defaults');
|
|
|
|
defaults.reset();
|
|
|
|
});
|