From: Aleksander Ɓukasz Date: Fri, 5 Jul 2013 14:35:01 +0000 (+0200) Subject: comparing nodes X-Git-Url: https://git.mdrn.pl/fnpeditor.git/commitdiff_plain/be2c8ef28fbbcf62764e5bdedf9131a1aad8317b?ds=inline comparing nodes --- diff --git a/modules/documentCanvas/canvas/canvas.test3.js b/modules/documentCanvas/canvas/canvas.test3.js index 8f779d3..b041bac 100644 --- a/modules/documentCanvas/canvas/canvas.test3.js +++ b/modules/documentCanvas/canvas/canvas.test3.js @@ -32,6 +32,18 @@ describe('Canvas', function() { }); }); + describe('DocumentElements comparison', function() { + it('reports dwo DocumentElements to be the same when they represent the same wlxml document element', function() { + var c = canvas.fromXML('
'), + first_div1 = c.doc().children()[0], + first_div2 = c.doc().children()[0], + second_div = c.doc().children()[1]; + expect(first_div1.sameNode(first_div1)).to.be.true; + expect(first_div1.sameNode(first_div2)).to.be.true; + expect(first_div1.sameNode(second_div)).to.be.false; + }); + }); + describe('traversing', function() { it('reports element nodes', function() { var c = canvas.fromXML('
'), diff --git a/modules/documentCanvas/canvas/documentElement.js b/modules/documentCanvas/canvas/documentElement.js index 637da5f..2225e0c 100644 --- a/modules/documentCanvas/canvas/documentElement.js +++ b/modules/documentCanvas/canvas/documentElement.js @@ -31,6 +31,10 @@ $.extend(DocumentElement.prototype, { toret.push(element); }); return toret; + }, + + sameNode: function(other) { + return other && (typeof other === typeof this) && other.$element[0] === this.$element[0]; } });