Fixing canvas.createList
[fnpeditor.git] / modules / documentCanvas / tests / canvas.test.js
index 57ad625..53bd35d 100644 (file)
@@ -118,8 +118,8 @@ define([
             );\r
         });\r
         \r
-        test('list', function() {\r
-            var c = new canvas.Canvas('<section><div>Alice</div>has<div>a cat</div></section>');\r
+        test('create list from existing nodes', function() {\r
+            var c = new canvas.Canvas('<section><div>Alice</div>has<div>a cat</div><div>some text</div></section>');\r
             var div1 = c.getNode({tag:'div'})[0];\r
             var div2 = c.getNode({tag:'div'})[1];\r
             \r
@@ -127,14 +127,56 @@ define([
             \r
             assert.xmlEqual(c.toXML(), '\\r
                 <section>\\r
-                    <div class="list">\\r
-                        <div class="list.item">Alice</div>\\r
-                        <div class="list.item">has</div>\\r
-                        <div class="list.item">a cat</div>\\r
+                    <div class="list.items">\\r
+                        <div class="item">Alice</div>\\r
+                        <div class="item">has</div>\\r
+                        <div class="item">a cat</div>\\r
                     </div>\\r
+                    <div>some text</div>\\r
                 </section>');\r
 \r
         });\r
+        \r
+        test('create list from existing nodes reverse', function() {\r
+            var c = new canvas.Canvas('<section><div>Alice</div>has<div>a cat</div><div>some text</div></section>');\r
+            var div1 = c.getNode({tag:'div'})[0];\r
+            var div2 = c.getNode({tag:'div'})[1];\r
+            \r
+            c.createList({start: div2, end: div1});\r
+            \r
+            assert.xmlEqual(c.toXML(), '\\r
+                <section>\\r
+                    <div class="list.items">\\r
+                        <div class="item">Alice</div>\\r
+                        <div class="item">has</div>\\r
+                        <div class="item">a cat</div>\\r
+                    </div>\\r
+                    <div>some text</div>\\r
+                </section>');\r
+\r
+        });\r
+        \r
+        test('remove list', function() {\r
+            var xml = '\\r
+                <section>\\r
+                    <div class="list.items">\\r
+                        <div class="item">Alice</div>\\r
+                        <div class="item">has</div>\\r
+                        <div class="item">a cat</div>\\r
+                    </div>\\r
+                    <div>some text</div>\\r
+                </section>';\r
+           var c = new canvas.Canvas(xml);\r
+           var item = c.getNode({klass: 'item'})[1];\r
+           c.removeList({pointer: item});\r
+           assert.xmlEqual(c.toXML(), '\\r
+                <section>\\r
+                    <div>Alice</div>\\r
+                    <div>has</div>\\r
+                    <div>a cat</div>\\r
+                    <div>some text</div>\\r
+                </section>');\r
+        });\r
     });\r
 \r
 });
\ No newline at end of file