X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/b729636a8bfe248aa9890a6f3bef56cbbab885fd..e3f4ff223c5acd7cf97b6a9ba1cdd83111dba63b:/src/wlxml/extensions/list/list.test.js diff --git a/src/wlxml/extensions/list/list.test.js b/src/wlxml/extensions/list/list.test.js index 10a6e91..2d47778 100644 --- a/src/wlxml/extensions/list/list.test.js +++ b/src/wlxml/extensions/list/list.test.js @@ -2,6 +2,9 @@ define(function(require) { 'use strict'; +/* jshint multistr:true */ +/* globals describe, it */ + var chai = require('libs/chai'), wlxml = require('wlxml/wlxml'), expect = chai.expect, @@ -16,6 +19,7 @@ var getDocumentFromXML = function(xml, options) { }; var removeEmptyTextNodes = function(xml) { + /* globals Node */ xml = $($.trim(xml)); xml.find(':not(iframe)') .addBack() @@ -39,7 +43,7 @@ describe('Lists extension', function() { div1 = section.contents()[1], textA = section.contents()[2]; - doc.transform('createList', {node1: div1, node2: textA}); + doc.createList({node1: div1, node2: textA}); expect(section.contents().length).to.equal(3, 'section has three child nodes'); @@ -56,6 +60,15 @@ describe('Lists extension', function() { expect(child3.contents()[0].getText()).to.equal('cat'); }); + it('Handles text nodes on the boundries', function() { + var doc = getDocumentFromXML('
Alicehasa cat
'), + textNode1 = doc.root.contents()[0], + textNode2 = doc.root.contents()[2]; + doc.createList({node1: textNode1, node2: textNode2}); + expect(doc.root.contents().length).to.equal(1); + expect(doc.root.contents()[0].is('list')).to.equal(true); + }); + it('allows creating nested list from existing sibling list items', function() { var doc = getDocumentFromXML('\
\ @@ -72,7 +85,7 @@ describe('Lists extension', function() { itemC = outerList.contents('.item')[2]; - doc.transform('createList', {node1: itemB, node2: itemC}); + doc.createList({node1: itemB, node2: itemC}); var outerListItems = outerList.contents('.item'), innerList = outerListItems[1].contents()[0]; @@ -108,7 +121,7 @@ describe('Lists extension', function() { item1 = list.contents()[1], item2 = list.contents()[2]; - doc.transform('extractItems', {item1: item1, item2: item2}); + doc.extractItems({item1: item1, item2: item2}); var section = doc.root, list1 = section.contents()[0], @@ -144,10 +157,9 @@ describe('Lists extension', function() {
')), list = doc.root.contents()[0], item1 = list.contents()[0], - item2 = list.contents()[1], - item3 = list.contents()[2]; + item2 = list.contents()[1]; - doc.transform('extractItems', {item1: item1, item2: item2}); + doc.extractItems({item1: item1, item2: item2}); var section = doc.root, oldItem1 = section.contents()[0], @@ -171,11 +183,10 @@ describe('Lists extension', function() { \ ')), list = doc.root.contents()[0], - item1 = list.contents()[0], item2 = list.contents()[1], item3 = list.contents()[2]; - doc.transform('extractItems', {item1: item2, item2: item3}); + doc.extractItems({item1: item2, item2: item3}); var section = doc.root, oldItem1 = section.contents()[1], @@ -201,7 +212,7 @@ describe('Lists extension', function() { item1 = list.contents()[0], item2 = list.contents()[1]; - doc.transform('extractItems', {item1: item1, item2: item2}); + doc.extractItems({item1: item1, item2: item2}); var section = doc.root, oldItem1 = section.contents()[0], @@ -231,11 +242,10 @@ describe('Lists extension', function() { nestedList = list.contents()[1].contents()[0], nestedListItem = nestedList.contents()[1]; - doc.transform('extractItems', {item1: nestedListItem, item2: nestedListItem}); + doc.extractItems({item1: nestedListItem, item2: nestedListItem}); //@@ name! - var section = doc.root, - list = section.contents()[0], - item1 = list.contents()[0], + list = doc.root.contents()[0]; + var item1 = list.contents()[0], item2 = list.contents()[1], // item3 = list.contents()[2], item4 = list.contents()[3], // @@ -280,11 +290,9 @@ describe('Lists extension', function() { nestedListItem1 = nestedList.contents()[1], nestedListItem2 = nestedList.contents()[2]; - doc.transform('extractItems', {item1: nestedListItem1, item2: nestedListItem2}); - - var section = doc.root, - list = section.contents()[0], - item1 = list.contents()[0], + doc.extractItems({item1: nestedListItem1, item2: nestedListItem2}); + list = doc.root.contents()[0]; + var item1 = list.contents()[0], item2 = list.contents()[1], item3 = list.contents()[2], item4 = list.contents()[3], @@ -321,11 +329,10 @@ describe('Lists extension', function() { nestedListItem1 = nestedList.contents()[0], nestedListItem2 = nestedList.contents()[1]; - doc.transform('extractItems', {item1: nestedListItem1, item2: nestedListItem2}); + doc.extractItems({item1: nestedListItem1, item2: nestedListItem2}); - var section = doc.root, - list = section.contents()[0], - item1 = list.contents()[0], + list = doc.root.contents()[0]; + var item1 = list.contents()[0], item2 = list.contents()[1], item3 = list.contents()[2], item4 = list.contents()[3], @@ -362,11 +369,10 @@ describe('Lists extension', function() { nestedListItem1 = nestedList.contents()[0], nestedListItem2 = nestedList.contents()[1]; - doc.transform('extractItems', {item1: nestedListItem1, item2: nestedListItem2}); + doc.extractItems({item1: nestedListItem1, item2: nestedListItem2}); - var section = doc.root, - list = section.contents()[0], - item1 = list.contents()[0], + list = doc.root.contents()[0]; + var item1 = list.contents()[0], item2 = list.contents()[1], item3 = list.contents()[2], item4 = list.contents()[3]; @@ -397,9 +403,9 @@ describe('Lists extension', function() { nestedList = list.contents()[1].contents()[0], nestedListItem = nestedList.contents()[0]; - var test = doc.transform('extractItems', {item1: nestedListItem, item2: nestedListItem, merge: false}); + var test = doc.extractItems({item1: nestedListItem, item2: nestedListItem, merge: false}); - expect(test).to.equal(true, 'extraction status ok'); + expect(test.sameNode(nestedListItem)).to.equal(true, 'first item returned'); var sectionContents = section.contents(), extractedItem = sectionContents[1];