X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/e5d6cddf0560271b56c4c4683d6194b067e8348c..42c62a9c47f2d316ae1e0c8c854da72a4d3f1243:/src/smartxml/smartxml.test.js diff --git a/src/smartxml/smartxml.test.js b/src/smartxml/smartxml.test.js index 2198795..499d1e9 100644 --- a/src/smartxml/smartxml.test.js +++ b/src/smartxml/smartxml.test.js @@ -4,25 +4,25 @@ define([ ], function(chai, smartxml) { 'use strict'; - +/*jshint expr:true */ var expect = chai.expect; var getDocumentFromXML = function(xml) { return smartxml.documentFromXML(xml); -} +}; var elementNodeFromParams = function(params) { return smartxml.elementNodeFromXML('<' + params.tag + '>'); -} +}; var elementNodeFromXML = function(xml) { return smartxml.elementNodeFromXML(xml); -} +}; -describe.only('smartxml', function() { +describe('smartxml', function() { describe('Basic Document properties', function() { it('exposes its root element', function() { @@ -41,7 +41,7 @@ describe.only('smartxml', function() { expect(contents[1].nodeType).to.equal(Node.ELEMENT_NODE, 'element node 1'); expect(contents[2].nodeType).to.equal(Node.TEXT_NODE, 'text node 2'); }); - }) + }); describe('Manipulations', function() { @@ -52,6 +52,24 @@ describe.only('smartxml', function() { expect(node1.contents()[0].sameNode(node2)).to.be.true; }); + it('wraps element node with another element node', function() { + var node = elementNodeFromXML('
'), + wrapper = elementNodeFromXML(''); + + node.wrapWith(wrapper); + expect(node.parent().sameNode(wrapper)).to.be.true; + }); + + it('wraps text node with element node', function() { + var node = elementNodeFromXML('
Alice
'), + textNode = node.contents()[0], + wrapper = elementNodeFromXML(''); + + textNode.wrapWith(wrapper); + expect(textNode.parent().sameNode(wrapper)).to.be.true; + expect(node.contents()).to.have.length(1); + }); + it('unwraps element node contents', function() { var node = elementNodeFromXML('
Alice
has propably a cat
!
'), outerDiv = node.contents()[1];