X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/5b89eff5afcb92f0e7b20daf62eae30aeb7b4e1c..7deea014cb2487a808a54c37646b74f5d255f575:/modules/documentCanvas/canvas/canvas.test3.js
diff --git a/modules/documentCanvas/canvas/canvas.test3.js b/modules/documentCanvas/canvas/canvas.test3.js
index f96e0ff..1908574 100644
--- a/modules/documentCanvas/canvas/canvas.test3.js
+++ b/modules/documentCanvas/canvas/canvas.test3.js
@@ -810,6 +810,44 @@ describe('Canvas', function() {
expect(sectionChildren[0].getText()).to.equal('Sometext');
});
});
+
+ describe('unwrapping the whole content of a DocumentNodeElement', function() {
+ it('removes a DocumentNodeElement but keeps its content', function() {
+ var c = canvas.fromXML(''),
+ section = c.doc(),
+ div = c.doc().children()[0],
+ span = div.children()[1];
+
+ var range = div.unwrapContents(),
+ sectionChildren = section.children();
+
+ expect(sectionChildren).to.have.length(3);
+ expect(sectionChildren[0].getText()).to.equal('Alice has');
+ expect(sectionChildren[1].sameNode(span)).to.equal(true, 'span ok');
+ expect(sectionChildren[2].getText()).to.equal(' cat');
+
+ expect(range.element1.sameNode(sectionChildren[0])).to.equal(true, 'range start ok');
+ expect(range.element2.sameNode(sectionChildren[2])).to.equal(true, 'range end ok');
+ });
+ it('merges text elements on the boundries', function() {
+ var c = canvas.fromXML(''),
+ section = c.doc(),
+ div = c.doc().children()[1],
+ span = div.children()[1];
+
+ var range = div.unwrapContents(),
+ sectionChildren = section.children();
+
+ expect(sectionChildren).to.have.length(3);
+ expect(sectionChildren[0].getText()).to.equal('Alicehas a ');
+ expect(sectionChildren[1].sameNode(span)).to.equal(true, 'span ok');
+ expect(sectionChildren[2].getText()).to.equal('!!!');
+
+ expect(range.element1.sameNode(sectionChildren[0])).to.equal(true, 'range start ok');
+ expect(range.element2.sameNode(sectionChildren[2])).to.equal(true, 'range end ok');
+ });
+ });
+
});
describe('Lists api', function() {