});
});
});
+
+ describe('Putting nodes around', function() {
+ it('will not allow to put node before or after root node', function() {
+ var doc = getDocumentFromXML('<root></root>'),
+ spy = sinon.spy(),
+ root = doc.root,
+ result;
+
+ doc.on('change', spy);
+
+ result = doc.root.before({tagName: 'test'});
+
+ expect(spy.callCount).to.equal(0);
+ expect(result).to.undefined;
+
+ result = doc.root.after({tagName: 'test'});
+
+ expect(spy.callCount).to.equal(0);
+ expect(result).to.undefined;
+
+ expect(doc.root.sameNode(root));
+ });
+ });
});
describe('Basic TextNode properties', function() {
expect(contents[1].contents().length).to.equal(1);
expect(contents[1].contents()[0].getText()).to.equal('b');
});
+ it('removes across elements - 6', function() {
+ var doc = getDocumentFromXML('<root><div>aaa<span>bbb</span>ccc</div><div>ddd</div></root>');
+ doc.deleteText({
+ from: {
+ node: getTextNode('aaa', doc),
+ offset: 1
+ },
+ to: {
+ node: getTextNode('ddd', doc),
+ offset: 1
+ }
+ }, {
+ error: function(e) {throw e;}
+ });
+
+ var contents = doc.root.contents();
+ expect(contents.length).to.equal(2);
+ expect(contents[0].contents().length).to.equal(1);
+ expect(contents[0].contents()[0].getText()).to.equal('a');
+ expect(contents[1].contents().length).to.equal(1);
+ expect(contents[1].contents()[0].getText()).to.equal('dd');
+ });
});
describe('Splitting text', function() {