X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/61143e615dfb903cd11c11539b7259cc4bc8b9fe..6535ed0c525f70c936a8e25ff38df5157b15c04c:/modules/documentCanvas/canvas/canvas.test3.js diff --git a/modules/documentCanvas/canvas/canvas.test3.js b/modules/documentCanvas/canvas/canvas.test3.js index 2017a8a..9877bb6 100644 --- a/modules/documentCanvas/canvas/canvas.test3.js +++ b/modules/documentCanvas/canvas/canvas.test3.js @@ -1122,6 +1122,21 @@ describe('Canvas', function() { expect($(c.toXML()).attr('meta-uri')).to.equal(undefined, 'setting attribute to zero length string'); }); + describe('output xml', function() { + it('keeps entities intact', function() { + var xmlIn = '<section>< ></section>', + c = canvas.fromXML(xmlIn), + xmlOut = c.toXML(); + expect(xmlOut).to.equal(xmlIn); + }); + it('keeps entities intact when they form html/xml', function() { + var xmlIn = '<section><abc></section>', + c = canvas.fromXML(xmlIn), + xmlOut = c.toXML(); + expect(xmlOut).to.equal(xmlIn); + }); + }); + describe('formatting output xml', function() { /*it('keeps white spaces at the edges of input xml', function() { var xmlIn = ' <section></section> ', @@ -1153,6 +1168,14 @@ describe('Canvas', function() { expect(partsIn).to.deep.equal(partsOut); }); + it('keeps white space at the beginning of text', function() { + var xmlIn = '<section> abc<div>some div</div> abc</section>', + c = canvas.fromXML(xmlIn), + xmlOut = c.toXML(); + + expect(xmlOut).to.equal(xmlIn); + }); + it('nests new children block elements', function() { var c = canvas.fromXML('<section></section>'); @@ -1173,6 +1196,68 @@ describe('Canvas', function() { expect(xmlOut).to.equal('<section><span></span></section>'); }); + it('keeps original white space at the end of text', function() { + + var xmlIn = '<header> Some text ended with white space \ + \ + <span class="uri">Some text</span> some text\ + \ + </header>', + c = canvas.fromXML(xmlIn); + + var xmlOut = c.toXML(); + console.log(xmlOut); + expect(xmlOut).to.equal(xmlIn); + }); + + it('keeps white space around text node', function() { + var xmlIn = '<section>\ + <header>header1</header>\ + Some text surrounded by white space\ + <header>header2</header>\ + </section>', + c = canvas.fromXML(xmlIn); + + var xmlOut = c.toXML(); + expect(xmlOut).to.equal(xmlIn); + }); + + it('keeps white space around text node - last node case', function() { + var xmlIn = '<section>\ + <header>header</header>\ + \ + Some text surrounded by white space\ + \ + </section>', + c = canvas.fromXML(xmlIn); + + var xmlOut = c.toXML(); + expect(xmlOut).to.equal(xmlIn); + }); + + it('keeps white space after detaching text element', function() { + var xmlIn = '<section><header>header</header>\n\ + \n\ + text1\n\ + \n\ + </section>', + expectedXmlOut = '<section><header>header</header>\n\ + \n\ + \n\ + \n\ + </section>', + c = canvas.fromXML(xmlIn), + children = c.doc().children(), + text = children[children.length-1]; + + expect(text.getText()).to.equal('text1'); + + text.detach(); + + var xmlOut = c.toXML(); + expect(xmlOut).to.equal(expectedXmlOut); + }); + }) }) });