WIP: Note editing, markdown to html
[oweals/karmaworld.git] / karmaworld / apps / wysihtml5 / static / wysihtml5 / wysihtml-0.4.17 / test / lang / object_test.js
1 module("wysihtml5.lang.object");
2
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 });
8 });
9
10 test("clone()", function() {
11   var obj = { foo: true },
12       returnValue = wysihtml5.lang.object(obj).clone();
13   ok(obj != returnValue);
14   deepEqual(obj, returnValue);
15 });
16
17 test("deep clone()", function() {
18   var obj = {
19       boo : {
20         foo: true
21       }
22     },
23     returnValueShallow = wysihtml5.lang.object(obj).clone(),
24     returnValueDeep = wysihtml5.lang.object(obj).clone(true);
25
26   ok(obj != returnValueShallow && obj.boo === returnValueShallow.boo);
27   deepEqual(obj, returnValueShallow);
28
29   ok(obj != returnValueDeep && obj.boo !== returnValueDeep.boo);
30   deepEqual(obj, returnValueDeep);
31 });
32
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());
38 });
39
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());
46 });