57 lines
1.3 KiB
JavaScript
57 lines
1.3 KiB
JavaScript
QUnit.module('Defaults - Ajax');
|
|
|
|
QUnit.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();
|
|
}
|
|
);
|
|
|
|
QUnit.test(
|
|
'more than one default option can be changed via set()',
|
|
function(assert) {
|
|
var defaults = require('select2/defaults');
|
|
var ajaxDelay = 123;
|
|
var dataDataType = 'xml';
|
|
defaults.set('ajax--delay', ajaxDelay);
|
|
defaults.set('ajax--data-type', dataDataType);
|
|
|
|
assert.equal(
|
|
defaults.defaults.ajax.delay,
|
|
ajaxDelay,
|
|
'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();
|
|
}
|
|
);
|