You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
1.5 KiB
JavaScript
79 lines
1.5 KiB
JavaScript
import { combine } from "../../Source/Cesium.js";
|
|
|
|
describe("Core/combine", function () {
|
|
it("can combine shallow references", function () {
|
|
var obj1 = {
|
|
x: 1,
|
|
y: 2,
|
|
other: {
|
|
value1: 0,
|
|
},
|
|
};
|
|
var obj2 = {
|
|
x: -1,
|
|
z: 3,
|
|
other: {
|
|
value2: 1,
|
|
},
|
|
};
|
|
var composite = combine(obj1, obj2);
|
|
expect(composite).toEqual({
|
|
x: 1,
|
|
y: 2,
|
|
z: 3,
|
|
other: {
|
|
value1: 0,
|
|
},
|
|
});
|
|
});
|
|
|
|
it("can combine deep references", function () {
|
|
var object1 = {
|
|
one: 1,
|
|
deep: {
|
|
value1: 10,
|
|
},
|
|
};
|
|
var object2 = {
|
|
two: 2,
|
|
deep: {
|
|
value1: 5,
|
|
value2: 11,
|
|
sub: {
|
|
val: "a",
|
|
},
|
|
},
|
|
};
|
|
|
|
var composite = combine(object1, object2, true);
|
|
expect(composite).toEqual({
|
|
one: 1,
|
|
two: 2,
|
|
deep: {
|
|
value1: 10,
|
|
value2: 11,
|
|
sub: {
|
|
val: "a",
|
|
},
|
|
},
|
|
});
|
|
});
|
|
|
|
it("can accept undefined as either object", function () {
|
|
var object = {
|
|
one: 1,
|
|
deep: {
|
|
value1: 10,
|
|
},
|
|
};
|
|
|
|
expect(combine(undefined, object)).toEqual(object);
|
|
expect(combine(undefined, object, true)).toEqual(object);
|
|
expect(combine(object, undefined)).toEqual(object);
|
|
expect(combine(object, undefined, true)).toEqual(object);
|
|
|
|
expect(combine(undefined, undefined)).toEqual({});
|
|
expect(combine(undefined, undefined, true)).toEqual({});
|
|
});
|
|
});
|