You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2013/06/04 08:56:04 UTC
[4/4] git commit: [flex-sdk] [refs/heads/develop] - remove unique id
chars from tag names in xml compare so embedded assets match
remove unique id chars from tag names in xml compare so embedded assets match
Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/7f859dd5
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/7f859dd5
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/7f859dd5
Branch: refs/heads/develop
Commit: 7f859dd5b88acc118daa3c03575a195a02f54777
Parents: 0d1d19f
Author: Alex Harui <ah...@apache.org>
Authored: Tue Jun 4 07:52:58 2013 +0100
Committer: Alex Harui <ah...@apache.org>
Committed: Tue Jun 4 07:55:08 2013 +0100
----------------------------------------------------------------------
mustella/as3/src/mustella/CompareBitmap.as | 66 ++++++++++++++++++-----
1 files changed, 52 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/7f859dd5/mustella/as3/src/mustella/CompareBitmap.as
----------------------------------------------------------------------
diff --git a/mustella/as3/src/mustella/CompareBitmap.as b/mustella/as3/src/mustella/CompareBitmap.as
index d4bc71a..940fa7f 100644
--- a/mustella/as3/src/mustella/CompareBitmap.as
+++ b/mustella/as3/src/mustella/CompareBitmap.as
@@ -508,10 +508,8 @@ public class CompareBitmap extends Assert
var t:String = xmlreader.data;
s = s.replace(/\r/g, "");
t = t.replace(/\r/g, "");
- if (s !== t)
+ if (s !== t && differ(s, t))
{
- differ(s, t);
-
testResult.doFail ("compare returned" + compareVal, absolutePathResult(url) + ".bad.png");
if (useRemoteDiffer)
@@ -1295,8 +1293,10 @@ public class CompareBitmap extends Assert
return xml;
}
- private function differ(s:String, t:String):void
+ private function differ(s:String, t:String):Boolean
{
+ var retval:Boolean = false;
+
var sl:Array = s.split("\n");
var tl:Array = t.split("\n");
trace(sl.length, tl.length);
@@ -1307,20 +1307,58 @@ public class CompareBitmap extends Assert
var b:String = (i < tl.length) ? tl[i] : "";
if (a != b)
{
- var c:String = "";
- var d:String = "";
- trace(i, "cur: ", a);
- trace(i, "xml: ", b);
- var m:int = Math.max(a.length, b.length);
- for (var j:int = 0; j < m; j++)
+ a = trimTag(a);
+ b = trimTag(b);
+ if (a != b)
+ {
+ retval = true;
+ var c:String = "";
+ var d:String = "";
+ trace(i, "cur: ", a);
+ trace(i, "xml: ", b);
+ var m:int = Math.max(a.length, b.length);
+ for (var j:int = 0; j < m; j++)
+ {
+ c += a.charCodeAt(j) + " ";
+ d += b.charCodeAt(j) + " ";
+ }
+ trace(i, "cur: ", c);
+ trace(i, "xml: ", d);
+ }
+ }
+ }
+ return retval;
+ }
+
+ // attempt to strip off random unique name chars for embedded assets
+ private function trimTag(a:String):String
+ {
+ var c:int;
+ var d:int;
+
+ d = a.indexOf("<");
+ if (d != -1)
+ {
+ c = a.indexOf(" ", d);
+ if (c == -1 && a.length > d + 2 && a.charAt(d + 1) == '/')
+ c = a.indexOf(">"); // closing tag
+ if (c != -1)
+ {
+ var rest:String = a.substring(c);
+ for (var i:int = c - 1;i > 0; i--)
{
- c += a.charCodeAt(j) + " ";
- d += b.charCodeAt(j) + " ";
+ var ch:String = a.charAt(i);
+ if ((ch >= '0' && ch <= '9') || ch == '_')
+ {
+ // assume it is a random char
+ }
+ else
+ break;
}
- trace(i, "cur: ", c);
- trace(i, "xml: ", d);
+ return a.substring(0, i + 1) + rest;
}
}
+ return a;
}
}