2016-08-03 15:27:03 -04:00
|
|
|
/* eslint-env qunit */
|
2015-05-03 16:12:38 -07:00
|
|
|
import mergeOptions from '../../../src/js/utils/merge-options.js';
|
2013-12-02 17:03:32 -08:00
|
|
|
|
2016-08-03 15:27:03 -04:00
|
|
|
QUnit.module('merge-options');
|
2016-08-12 13:51:31 -04:00
|
|
|
QUnit.test('should merge options objects', function(assert) {
|
2016-08-03 15:27:03 -04:00
|
|
|
const ob1 = {
|
2013-12-02 17:03:32 -08:00
|
|
|
a: true,
|
|
|
|
b: { b1: true, b2: true, b3: true },
|
|
|
|
c: true
|
|
|
|
};
|
|
|
|
|
2016-08-03 15:27:03 -04:00
|
|
|
const ob2 = {
|
2013-12-02 17:03:32 -08:00
|
|
|
// override value
|
|
|
|
a: false,
|
|
|
|
// merge sub-option values
|
|
|
|
b: { b1: true, b2: false, b4: true },
|
|
|
|
// add new option
|
|
|
|
d: true
|
|
|
|
};
|
|
|
|
|
2016-08-03 15:27:03 -04:00
|
|
|
const ob3 = mergeOptions(ob1, ob2);
|
2013-12-02 17:03:32 -08:00
|
|
|
|
2016-08-12 13:51:31 -04:00
|
|
|
assert.deepEqual(ob3, {
|
2013-12-02 17:03:32 -08:00
|
|
|
a: false,
|
|
|
|
b: { b1: true, b2: false, b3: true, b4: true },
|
|
|
|
c: true,
|
|
|
|
d: true
|
|
|
|
}, 'options objects merged correctly');
|
2015-03-10 18:01:11 -07:00
|
|
|
});
|