1 module("wysihtml5.lang.object");
3 test("merge()", function() {
4 var obj = { foo: 1, bar: 1 },
5 returnValue = wysihtml5.lang.object(obj).merge({ bar: 2, baz: 3 }).get();
6 equal(returnValue, obj);
7 deepEqual(obj, { foo: 1, bar: 2, baz: 3 });
10 test("clone()", function() {
11 var obj = { foo: true },
12 returnValue = wysihtml5.lang.object(obj).clone();
13 ok(obj != returnValue);
14 deepEqual(obj, returnValue);
17 test("deep clone()", function() {
23 returnValueShallow = wysihtml5.lang.object(obj).clone(),
24 returnValueDeep = wysihtml5.lang.object(obj).clone(true);
26 ok(obj != returnValueShallow && obj.boo === returnValueShallow.boo);
27 deepEqual(obj, returnValueShallow);
29 ok(obj != returnValueDeep && obj.boo !== returnValueDeep.boo);
30 deepEqual(obj, returnValueDeep);
33 test("isArray()", function() {
34 ok(wysihtml5.lang.object([]).isArray());
35 ok(!wysihtml5.lang.object({}).isArray());
36 ok(!wysihtml5.lang.object(document.body.childNodes).isArray());
37 ok(!wysihtml5.lang.object("1,2,3").isArray());
40 test("isFunction()", function() {
41 ok(wysihtml5.lang.object(function() {}).isFunction());
42 ok(!wysihtml5.lang.object({}).isFunction());
43 ok(!wysihtml5.lang.object([]).isFunction());
44 ok(!wysihtml5.lang.object(document.body.childNodes).isFunction());
45 ok(!wysihtml5.lang.object("1,2,3").isFunction());