Beispiel #1
0
	test('Test contents while getting an existing property', () => {
		let testObject = new model.ConfigModel(JSON.stringify({ 'a': 1 }));
		assert.deepEqual(testObject.getContentsFor('a'), 1);

		testObject = new model.ConfigModel(JSON.stringify({ 'a': { 'b': 1 } }));
		assert.deepEqual(testObject.getContentsFor('a'), { 'b': 1 });
	});
Beispiel #2
0
	test('Test contents are undefined for non existing properties', () => {
		const testObject = new model.ConfigModel(JSON.stringify({
			awesome: true
		}));

		assert.deepEqual(testObject.getContentsFor('unknownproperty'), undefined);
	});
Beispiel #3
0
	test('simple merge with an undefined contents', () => {
		let base = new model.ConfigModel(JSON.stringify({ 'a': 1, 'b': 2 }));
		let add = new model.ConfigModel(null);
		let result = base.merge(add);
		assert.deepEqual(result.contents, { 'a': 1, 'b': 2 });

		base = new model.ConfigModel(null);
		add = new model.ConfigModel(JSON.stringify({ 'a': 1, 'b': 2 }));
		result = base.merge(add);
		assert.deepEqual(result.contents, { 'a': 1, 'b': 2 });

		base = new model.ConfigModel(null);
		add = new model.ConfigModel(null);
		result = base.merge(add);
		assert.deepEqual(result.contents, {});
	});
Beispiel #4
0
	test('Test update with empty data', () => {
		const testObject = new model.ConfigModel();
		testObject.update('');

		assert.deepEqual(testObject.contents, {});
		assert.deepEqual(testObject.keys, []);

		testObject.update(null);

		assert.deepEqual(testObject.contents, {});
		assert.deepEqual(testObject.keys, []);

		testObject.update(undefined);

		assert.deepEqual(testObject.contents, {});
		assert.deepEqual(testObject.keys, []);
	});
Beispiel #5
0
	test('Test configWithOverrides gives all content merged with overrides', () => {
		const testObject = new model.ConfigModel(JSON.stringify({ 'a': 1, 'c': 1, '[b]': { 'a': 2 } }));

		assert.deepEqual(testObject.configWithOverrides('b').contents, { 'a': 2, 'c': 1, '[b]': { 'a': 2 } });
	});
Beispiel #6
0
	test('Test contents are undefined for undefined config', () => {
		const testObject = new model.ConfigModel(null);

		assert.deepEqual(testObject.getContentsFor('unknownproperty'), undefined);
	});
Beispiel #7
0
	test('Recursive merge using config models', () => {
		let base = new model.ConfigModel(JSON.stringify({ 'a': { 'b': 1 } }));
		let add = new model.ConfigModel(JSON.stringify({ 'a': { 'b': 2 } }));
		let result = base.merge(add);
		assert.deepEqual(result.contents, { 'a': { 'b': 2 } });
	});
Beispiel #8
0
	test('simple merge using models', () => {
		let base = new model.ConfigModel(JSON.stringify({ 'a': 1, 'b': 2 }));
		let add = new model.ConfigModel(JSON.stringify({ 'a': 3, 'c': 4 }));
		let result = base.merge(add);
		assert.deepEqual(result.contents, { 'a': 3, 'b': 2, 'c': 4 });
	});
Beispiel #9
0
	test('Test configWithOverrides gives empty contents', () => {
		const testObject = new model.ConfigModel(null);

		assert.deepEqual(testObject.configWithOverrides('b').contents, {});
	});