X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/0f406b246f9261651b5982be71a49189349c8e3e..58a70817b94ce86e550c93a9a36e635e47ea594e:/modules/documentCanvas/tests/utils.js
diff --git a/modules/documentCanvas/tests/utils.js b/modules/documentCanvas/tests/utils.js
index e23808c..fcb9853 100644
--- a/modules/documentCanvas/tests/utils.js
+++ b/modules/documentCanvas/tests/utils.js
@@ -1,29 +1,49 @@
-define(['libs/jquery-1.9.1.min'], function($) {
- return {
- cleanUp: function(xml) {
-
- var rmws = function(node) {
- if(node.nodeType === 3) {
- node.data = $.trim(node.data);
- }
- else {
- $(node).contents().each(function() {
- rmws(this);
- });
- }
- }
-
- xml = $($.trim(xml));
- xml.each(function() {
- rmws(this);
- });
-
- /*var toret = xml
- .replace(/(<.*>)\s*(<.*>)/gm, '$1$2')
- .replace(/(<\/.*>)\s*(<\/.*>)/gm, '$1$2')
- .replace(/(<\/.*>)\s*(<.*>)/gm, '$1$2');
- return $.trim(toret);*/
- return $('
').append(xml).html();
- }
- }
+define(['libs/jquery-1.9.1.min', 'libs/chai'], function($, chai) {
+ return {
+ cleanUp: function(xml) {
+ var rmws = function(node) {
+ if(node.nodeType === 3) {
+ node.data = $.trim(node.data);
+ }
+ else {
+ $(node).contents().each(function() {
+ rmws(this);
+ });
+ }
+ };
+
+ xml = $($.trim(xml));
+ xml.each(function() {
+ rmws(this);
+ });
+
+ /*var toret = xml
+ .replace(/(<.*>)\s*(<.*>)/gm, '$1$2')
+ .replace(/(<\/.*>)\s*(<\/.*>)/gm, '$1$2')
+ .replace(/(<\/.*>)\s*(<.*>)/gm, '$1$2');
+ return $.trim(toret);*/
+ return $('
').append(xml).html();
+ },
+
+ assertDomEqual: function(lhs, rhs) {
+ lhs = lhs.clone();
+ var rhsArr = $.parseHTML(rhs);
+ if(rhsArr.length === 1) {
+ rhs = $(rhsArr[0]);
+ } else {
+ rhs = $('
');
+ $.each(rhsArr, function(i, el) {
+ rhs.append(el);
+ });
+ }
+ if(lhs.length > 1) {
+ lhs = $('
').append(lhs);
+ }
+ lhs.attr('id', '');
+ rhs.attr('id', '');
+ lhs.find('*').each(function() {$(this).attr('id', '');});
+ rhs.find('*').each(function() {$(this).attr('id', '');});
+ return chai.assert.ok(lhs[0].isEqualNode(rhs[0]), 'nodes are equal');
+ }
+ };
});
\ No newline at end of file