mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-06-21 21:05:42 +00:00
updated tests
This commit is contained in:
@@ -260,10 +260,7 @@ public class ActionScript2Test {
|
||||
+ "var a=7;\r\n"
|
||||
+ "var b=8;\r\n"
|
||||
+ "var c=9;\r\n"
|
||||
+ "a=_loc0_=10;\r\n"
|
||||
+ "b=_loc0_;\r\n"
|
||||
+ "c=_loc0_;\r\n"
|
||||
+ "var d=_loc0_;\r\n"
|
||||
+ "var d=c = b = a = 10;\r\n"
|
||||
+ "trace(d);\r\n");
|
||||
}
|
||||
|
||||
@@ -271,7 +268,7 @@ public class ActionScript2Test {
|
||||
public void frame14_objectsTest() {
|
||||
compareSrc(14, "trace(\"objectsTest\");\r\n"
|
||||
+ "var flashBox=new Box(box1);\r\n"
|
||||
+ "_root.onEnterFrame=function()\r\n"
|
||||
+ "_root.onEnterFrame = function()\r\n"
|
||||
+ "{\r\n"
|
||||
+ "flashBox.moveUp();\r\n"
|
||||
+ "};\r\n"
|
||||
@@ -295,11 +292,11 @@ public class ActionScript2Test {
|
||||
+ "k++;\r\n"
|
||||
+ "if(k == 7)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=5 * k;\r\n"
|
||||
+ "k = 5 * k;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "else\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=5 + k;\r\n"
|
||||
+ "k = 5 + k;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "}\r\n"
|
||||
+ "while(k < 9);\r\n");
|
||||
@@ -315,15 +312,15 @@ public class ActionScript2Test {
|
||||
+ "a++;\r\n"
|
||||
+ "b--;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "a=7;\r\n"
|
||||
+ "b=9;\r\n");
|
||||
+ "a = 7;\r\n"
|
||||
+ "b = 9;\r\n");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void frame17_forInTest() {
|
||||
compareSrc(17, "function testForIn()\r\n"
|
||||
+ "{\r\n"
|
||||
+ "var _loc1_=[];\r\n"
|
||||
+ "var _loc1_ = [];\r\n"
|
||||
+ "for(var _loc2_ in _loc1_)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(_loc2_ > 3)\r\n"
|
||||
@@ -351,7 +348,7 @@ public class ActionScript2Test {
|
||||
+ "var k=5;\r\n"
|
||||
+ "try\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=Infinity;\r\n"
|
||||
+ "k = Infinity;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "catch(e)\r\n"
|
||||
+ "{\r\n"
|
||||
@@ -364,7 +361,7 @@ public class ActionScript2Test {
|
||||
+ "trace(\"next\");\r\n"
|
||||
+ "try\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=6;\r\n"
|
||||
+ "k = 6;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "catch(e)\r\n"
|
||||
+ "{\r\n"
|
||||
@@ -374,7 +371,7 @@ public class ActionScript2Test {
|
||||
+ "var k=5;\r\n"
|
||||
+ "try\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=Infinity;\r\n"
|
||||
+ "k = Infinity;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "finally\r\n"
|
||||
+ "{\r\n"
|
||||
@@ -400,8 +397,7 @@ public class ActionScript2Test {
|
||||
+ "trace(\"incDecTest\");\r\n"
|
||||
+ "var i=5;\r\n"
|
||||
+ "var b=i++;\r\n"
|
||||
+ "i=_loc0_=i-1;\r\n"
|
||||
+ "var c=_loc0_ + 5;\r\n"
|
||||
+ "var c=--i + 5;\r\n"
|
||||
+ "trace(\"a:\" + a + \" b:\" + b + \" c:\" + c);\r\n"
|
||||
+ "var arr=[1,2,3];\r\n"
|
||||
+ "arr[tst()]++;\r\n"
|
||||
@@ -415,15 +411,8 @@ public class ActionScript2Test {
|
||||
+ "var a=5;\r\n"
|
||||
+ "var b=6;\r\n"
|
||||
+ "var c=7;\r\n"
|
||||
+ "a=_loc0_=4;\r\n"
|
||||
+ "b=_loc0_;\r\n"
|
||||
+ "c=_loc0_;\r\n"
|
||||
+ "var d=_loc0_;\r\n"
|
||||
+ "a=_loc0_=7;\r\n"
|
||||
+ "b=_loc0_;\r\n"
|
||||
+ "c=_loc0_;\r\n"
|
||||
+ "d=_loc0_;\r\n"
|
||||
+ "if(_loc0_ > 2)\r\n"
|
||||
+ "var d=c = b = a = 4;\r\n"
|
||||
+ "if((d = c = b = a = 7) > 2)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(d);\r\n"
|
||||
+ "}\r\n"
|
||||
@@ -443,12 +432,12 @@ public class ActionScript2Test {
|
||||
compareSrc(22, "function a()\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"hi\");\r\n"
|
||||
+ "var _loc1_=5;\r\n"
|
||||
+ "var _loc1_ = 5;\r\n"
|
||||
+ "if(_loc1_ == 7)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "return undefined;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "_loc1_=_loc1_ * 9;\r\n"
|
||||
+ "_loc1_ = _loc1_ * 9;\r\n"
|
||||
+ "trace(_loc1_);\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"function2Test\");\r\n");
|
||||
@@ -458,7 +447,7 @@ public class ActionScript2Test {
|
||||
public void frame23_tryFunctionTest() {
|
||||
compareSrc(23, "function testtry()\r\n"
|
||||
+ "{\r\n"
|
||||
+ "var _loc1_=5;\r\n"
|
||||
+ "var _loc1_ = 5;\r\n"
|
||||
+ "try\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(_loc1_ == 3)\r\n"
|
||||
@@ -471,7 +460,7 @@ public class ActionScript2Test {
|
||||
+ "}\r\n"
|
||||
+ "else\r\n"
|
||||
+ "{\r\n"
|
||||
+ "_loc1_=7;\r\n"
|
||||
+ "_loc1_ = 7;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "}\r\n"
|
||||
+ "catch(e)\r\n"
|
||||
@@ -498,8 +487,8 @@ public class ActionScript2Test {
|
||||
public void frame25_forInInTest() {
|
||||
compareSrc(25, "function tst()\r\n"
|
||||
+ "{\r\n"
|
||||
+ "var _loc2_=[];\r\n"
|
||||
+ "_loc2_[0]=[];\r\n"
|
||||
+ "var _loc2_ = [];\r\n"
|
||||
+ "_loc2_[0] = [];\r\n"
|
||||
+ "for(var _loc3_ in _loc2_)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "for(var _loc1_ in _loc3_)\r\n"
|
||||
@@ -524,8 +513,8 @@ public class ActionScript2Test {
|
||||
public void frame26_registersFuncTest() {
|
||||
compareSrc(26, "function tst(px)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "var _loc1_=57;\r\n"
|
||||
+ "_loc1_=_loc1_ * 27;\r\n"
|
||||
+ "var _loc1_ = 57;\r\n"
|
||||
+ "_loc1_ = _loc1_ * 27;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"registersFuncTest\");\r\n"
|
||||
+ "tst(5);\r\n"
|
||||
@@ -545,15 +534,11 @@ public class ActionScript2Test {
|
||||
public void frame28_function3Test() {
|
||||
compareSrc(28, "function tst()\r\n"
|
||||
+ "{\r\n"
|
||||
+ "var _loc1_=5;\r\n"
|
||||
+ "c=_loc1_=8;\r\n"
|
||||
+ "var _loc1_ = 5;\r\n"
|
||||
+ "c = _loc1_ = 8;\r\n"
|
||||
+ "trace(\"hi\");\r\n"
|
||||
+ "trace(_loc1_);\r\n"
|
||||
+ "c=_loc0_=9;\r\n"
|
||||
+ "f=_loc0_;\r\n"
|
||||
+ "d=_loc0_;\r\n"
|
||||
+ "e=_loc0_;\r\n"
|
||||
+ "if(_loc0_ > 5)\r\n"
|
||||
+ "if((e = d = f = c = 9) > 5)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"dd\");\r\n"
|
||||
+ "}\r\n"
|
||||
@@ -574,7 +559,7 @@ public class ActionScript2Test {
|
||||
+ "while(true)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "a++;\r\n"
|
||||
+ "b=_loc0_=b + 2;\r\n"
|
||||
+ "b = b + 2;\r\n"
|
||||
+ "if(c < 10)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(c);\r\n"
|
||||
@@ -612,7 +597,7 @@ public class ActionScript2Test {
|
||||
public void frame31_function4Test() {
|
||||
compareSrc(31, "function tst()\r\n"
|
||||
+ "{\r\n"
|
||||
+ "var _loc1_=5;\r\n"
|
||||
+ "var _loc1_ = 5;\r\n"
|
||||
+ "while(_loc1_ < 10)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(_loc1_ == 5)\r\n"
|
||||
@@ -621,7 +606,7 @@ public class ActionScript2Test {
|
||||
+ "{\r\n"
|
||||
+ "return true;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "_loc1_=_loc1_+1;\r\n"
|
||||
+ "_loc1_ = _loc1_ + 1;\r\n"
|
||||
+ "continue;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return false;\r\n"
|
||||
@@ -645,7 +630,7 @@ public class ActionScript2Test {
|
||||
+ "k++;\r\n"
|
||||
+ "if(k < 10)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=k * 5;\r\n"
|
||||
+ "k = k * 5;\r\n"
|
||||
+ "trace(k);\r\n"
|
||||
+ "continue;\r\n"
|
||||
+ "}\r\n"
|
||||
@@ -673,7 +658,7 @@ public class ActionScript2Test {
|
||||
+ "}\r\n"
|
||||
+ "k++;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "while(k=_loc0_=k + 5, k < 20);\r\n"
|
||||
+ "while(k = k + 5, k < 20);\r\n"
|
||||
+ "trace(\"end\");\r\n");
|
||||
}
|
||||
|
||||
@@ -693,13 +678,13 @@ public class ActionScript2Test {
|
||||
+ "clearTimeout(4);\r\n"
|
||||
+ "var mc;\r\n"
|
||||
+ "duplicateMovieClip(mc,\"copy\",16389);\r\n"
|
||||
+ "a=escape(\"how\");\r\n"
|
||||
+ "a = escape(\"how\");\r\n"
|
||||
+ "var f=a;\r\n"
|
||||
+ "fscommand(\"alert(\\\"hi\\\");\");\r\n"
|
||||
+ "a=mc._alpha;\r\n"
|
||||
+ "a=getTimer();\r\n"
|
||||
+ "a = mc._alpha;\r\n"
|
||||
+ "a = getTimer();\r\n"
|
||||
+ "getURL(\"http://localhost/\",\"wnd\",\"POST\");\r\n"
|
||||
+ "a=getVersion();\r\n"
|
||||
+ "a = getVersion();\r\n"
|
||||
+ "gotoAndStop(5);\r\n"
|
||||
+ "play();\r\n"
|
||||
+ "gotoAndStop(8);\r\n"
|
||||
@@ -707,26 +692,26 @@ public class ActionScript2Test {
|
||||
+ "{\r\n"
|
||||
+ "trace(\"loaded\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "a=int(f);\r\n"
|
||||
+ "a=isFinite(f);\r\n"
|
||||
+ "a=isNaN(f);\r\n"
|
||||
+ "a=length(f);\r\n"
|
||||
+ "a = int(f);\r\n"
|
||||
+ "a = isFinite(f);\r\n"
|
||||
+ "a = isNaN(f);\r\n"
|
||||
+ "a = length(f);\r\n"
|
||||
+ "loadMovie(\"http://localhost/test.swf\",a,\"GET\");\r\n"
|
||||
+ "loadMovieNum(\"http://localhost/test.swf\",5,\"GET\");\r\n"
|
||||
+ "loadVariables(\"http://localhost/vars.txt\",a,\"GET\");\r\n"
|
||||
+ "loadVariablesNum(\"http://localhost/vars.txt\",4,\"GET\");\r\n"
|
||||
+ "a=mbchr(f);\r\n"
|
||||
+ "a=mblength(f);\r\n"
|
||||
+ "a=mbord(f);\r\n"
|
||||
+ "a=mbsubstring(\"aaaa\",5,4);\r\n"
|
||||
+ "a = mbchr(f);\r\n"
|
||||
+ "a = mblength(f);\r\n"
|
||||
+ "a = mbord(f);\r\n"
|
||||
+ "a = mbsubstring(\"aaaa\",5,4);\r\n"
|
||||
+ "MMExecute(\"destroyPC\");\r\n"
|
||||
+ "nextFrame();\r\n"
|
||||
+ "gotoAndStop(1);\r\n"
|
||||
+ "a=Number(f);\r\n"
|
||||
+ "a=Object(f);\r\n"
|
||||
+ "a=ord(f);\r\n"
|
||||
+ "a=parseFloat(f);\r\n"
|
||||
+ "a=parseInt(f,16);\r\n"
|
||||
+ "a = Number(f);\r\n"
|
||||
+ "a = Object(f);\r\n"
|
||||
+ "a = ord(f);\r\n"
|
||||
+ "a = parseFloat(f);\r\n"
|
||||
+ "a = parseInt(f,16);\r\n"
|
||||
+ "play();\r\n"
|
||||
+ "prevFrame();\r\n"
|
||||
+ "gotoAndStop(1);\r\n"
|
||||
@@ -734,37 +719,28 @@ public class ActionScript2Test {
|
||||
+ "printAsBitmap(mc,\"bframe\");\r\n"
|
||||
+ "printAsBitmapNum(5,\"bframe\");\r\n"
|
||||
+ "printNum(4,\"bframe\");\r\n"
|
||||
+ "a=random(10);\r\n"
|
||||
+ "a = random(10);\r\n"
|
||||
+ "removeMovieClip(mc);\r\n"
|
||||
+ "setInterval(tst,5,f);\r\n"
|
||||
+ "mc._X=25;\r\n"
|
||||
+ "mc._X = 25;\r\n"
|
||||
+ "setTimeout(tst,5,f);\r\n"
|
||||
+ "showRedrawRegions(false,0);\r\n"
|
||||
+ "startDrag(mc,1,5,5,6,6);\r\n"
|
||||
+ "stop();\r\n"
|
||||
+ "stopAllSounds();\r\n"
|
||||
+ "stopDrag();\r\n"
|
||||
+ "a=String(f);\r\n"
|
||||
+ "a=\"aa\";\r\n"
|
||||
+ "a = String(f);\r\n"
|
||||
+ "a = \"aa\";\r\n"
|
||||
+ "targetPath(f);\r\n"
|
||||
+ "tellTarget(mc)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"told\")\r\n"
|
||||
+ "};\r\n"
|
||||
+ "toggleHighQuality();\r\n"
|
||||
+ "a=unescape(f);\r\n"
|
||||
+ "a = unescape(f);\r\n"
|
||||
+ "unloadMovie(mc);\r\n"
|
||||
+ "unloadMovieNum(4);\r\n"
|
||||
+ "updateAfterEvent();\r\n");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void frame36_Test() {
|
||||
compareSrc(36, "function tst()\r\n"
|
||||
+ "{\r\n"
|
||||
+ "var _loc1_=5;\r\n"
|
||||
+ "_loc1_=_loc1_+1;\r\n"
|
||||
+ "trace(_loc1_);\r\n"
|
||||
+ "}\r\n");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -50,8 +50,7 @@ public class ActionScript3Test {
|
||||
|
||||
@Test
|
||||
public void testHello() {
|
||||
decompileMethod("testHello", "trace(\"hello\");\r\n"
|
||||
+ "return;\r\n", false);
|
||||
decompileMethod("testHello", "trace(\"hello\");\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -59,22 +58,22 @@ public class ActionScript3Test {
|
||||
decompileMethod("testIncDec", "var a:* = 5;\r\n"
|
||||
+ "var b:* = 0;\r\n"
|
||||
+ "trace(\"++var\");\r\n"
|
||||
+ "b=++a;\r\n"
|
||||
+ "b = ++a;\r\n"
|
||||
+ "trace(\"var++\");\r\n"
|
||||
+ "b=a++;\r\n"
|
||||
+ "b = a++;\r\n"
|
||||
+ "trace(\"--var\");\r\n"
|
||||
+ "b=--a;\r\n"
|
||||
+ "b = --a;\r\n"
|
||||
+ "trace(\"var--\");\r\n"
|
||||
+ "b=a--;\r\n"
|
||||
+ "b = a--;\r\n"
|
||||
+ "var c:* = [1,2,3,4,5];\r\n"
|
||||
+ "trace(\"++arr\");\r\n"
|
||||
+ "b=++c[2];\r\n"
|
||||
+ "b = ++c[2];\r\n"
|
||||
+ "trace(\"arr++\");\r\n"
|
||||
+ "b=c[2]++;\r\n"
|
||||
+ "b = c[2]++;\r\n"
|
||||
+ "trace(\"--arr\");\r\n"
|
||||
+ "b=--c[2];\r\n"
|
||||
+ "b = --c[2];\r\n"
|
||||
+ "trace(\"arr--\");\r\n"
|
||||
+ "b=c[2]--;\r\n"
|
||||
+ "b = c[2]--;\r\n"
|
||||
+ "var d:* = new TestClass1();\r\n"
|
||||
+ "trace(\"++property\");\r\n"
|
||||
+ "trace(++d.attrib);\r\n"
|
||||
@@ -87,10 +86,9 @@ public class ActionScript3Test {
|
||||
+ "trace(\"arr[e++]\");\r\n"
|
||||
+ "var chars:Array = new Array(36);\r\n"
|
||||
+ "var index:uint = 0;\r\n"
|
||||
+ "chars[index++]=5;\r\n"
|
||||
+ "chars[index++] = 5;\r\n"
|
||||
+ "trace(\"arr[++e]\");\r\n"
|
||||
+ "chars[++index]=5;\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "chars[++index] = 5;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -98,11 +96,10 @@ public class ActionScript3Test {
|
||||
decompileMethod("testDoWhile", "var a:* = 8;\r\n"
|
||||
+ "do\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"a=\"+a);\r\n"
|
||||
+ "trace(\"a=\" + a);\r\n"
|
||||
+ "a++;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "while(a<20);\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "while(a < 20);\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -126,8 +123,7 @@ public class ActionScript3Test {
|
||||
+ "finally\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"finally block\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -135,32 +131,30 @@ public class ActionScript3Test {
|
||||
decompileMethod("testWhileContinue", "var a:* = 5;\r\n"
|
||||
+ "while(true)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(a==9)\r\n"
|
||||
+ "if(a == 9)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(a==8)\r\n"
|
||||
+ "if(a == 8)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "continue;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "if(a==9)\r\n"
|
||||
+ "if(a == 9)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"hello 1\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"hello2\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testPrecedence() {
|
||||
decompileMethod("testPrecedence", "var a:* = 0;\r\n"
|
||||
+ "a=(5+6)*7;\r\n"
|
||||
+ "a=5*(2+3);\r\n"
|
||||
+ "a=5+6*7;\r\n"
|
||||
+ "a=5*2+2;\r\n"
|
||||
+ "trace(\"a=\"+a);\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "a = (5 + 6) * 7;\r\n"
|
||||
+ "a = 5 * (2 + 3);\r\n"
|
||||
+ "a = 5 + 6 * 7;\r\n"
|
||||
+ "a = 5 * 2 + 2;\r\n"
|
||||
+ "trace(\"a=\" + a);\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -169,8 +163,7 @@ public class ActionScript3Test {
|
||||
+ "trace(\"quotes:\\\"hello!\\\"\");\r\n"
|
||||
+ "trace(\"backslash: \\\\ \");\r\n"
|
||||
+ "trace(\"single quotes: \\'hello!\\'\");\r\n"
|
||||
+ "trace(\"new line \\r\\n hello!\");\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "trace(\"new line \\r\\n hello!\");\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -183,20 +176,20 @@ public class ActionScript3Test {
|
||||
+ "loopswitch3:\r\n"
|
||||
+ "switch(a)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "case 57*a:\r\n"
|
||||
+ "case 57 * a:\r\n"
|
||||
+ "trace(\"fiftyseven multiply a\");\r\n"
|
||||
+ "b=0;\r\n"
|
||||
+ "while(b<50)\r\n"
|
||||
+ "b = 0;\r\n"
|
||||
+ "while(b < 50)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(b==10)\r\n"
|
||||
+ "if(b == 10)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "if(b==15)\r\n"
|
||||
+ "if(b == 15)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "break loop3;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "b=b+1;\r\n"
|
||||
+ "b = b + 1;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "case 13:\r\n"
|
||||
@@ -210,25 +203,25 @@ public class ActionScript3Test {
|
||||
+ "default:\r\n"
|
||||
+ "trace(\"default clause\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "c=0;\r\n"
|
||||
+ "c = 0;\r\n"
|
||||
+ "loop1:\r\n"
|
||||
+ "for(;c<8;c=c+1)\r\n"
|
||||
+ "for(;c < 8;c = c + 1)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "d=0;\r\n"
|
||||
+ "while(d<25)\r\n"
|
||||
+ "d = 0;\r\n"
|
||||
+ "while(d < 25)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "e=0;\r\n"
|
||||
+ "if(e<50)\r\n"
|
||||
+ "e = 0;\r\n"
|
||||
+ "if(e < 50)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(e==9)\r\n"
|
||||
+ "if(e == 9)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "if(e==20)\r\n"
|
||||
+ "if(e == 20)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "continue loop1;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "if(e!=8)\r\n"
|
||||
+ "if(e != 8)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "break loop1;\r\n"
|
||||
+ "}\r\n"
|
||||
@@ -236,8 +229,7 @@ public class ActionScript3Test {
|
||||
+ "d++;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"hello\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -245,7 +237,7 @@ public class ActionScript3Test {
|
||||
decompileMethod("testSwitchDefault", "var a:* = 5;\r\n"
|
||||
+ "switch(a)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "case 57*a:\r\n"
|
||||
+ "case 57 * a:\r\n"
|
||||
+ "trace(\"fiftyseven multiply a\");\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "case 13:\r\n"
|
||||
@@ -258,8 +250,7 @@ public class ActionScript3Test {
|
||||
+ "break;\r\n"
|
||||
+ "default:\r\n"
|
||||
+ "trace(\"default clause\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -267,81 +258,76 @@ public class ActionScript3Test {
|
||||
decompileMethod("testMultipleCondition", "var a:* = 5;\r\n"
|
||||
+ "var b:* = 8;\r\n"
|
||||
+ "var c:* = 9;\r\n"
|
||||
+ "if((a<=4||b<=8)&&c==7)\r\n"
|
||||
+ "if((a <= 4 || b <= 8) && c == 7)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"onTrue\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "else\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"onFalse\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testForBreak() {
|
||||
decompileMethod("testForBreak", "var a:* = 0;\r\n"
|
||||
+ "while(a<10)\r\n"
|
||||
+ "while(a < 10)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(a==5)\r\n"
|
||||
+ "if(a == 5)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"hello:\"+a);\r\n"
|
||||
+ "trace(\"hello:\" + a);\r\n"
|
||||
+ "a++;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testIf() {
|
||||
decompileMethod("testIf", "var a:* = 5;\r\n"
|
||||
+ "if(a==7)\r\n"
|
||||
+ "if(a == 7)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"onTrue\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testIfElse() {
|
||||
decompileMethod("testIfElse", "var a:* = 5;\r\n"
|
||||
+ "if(a==7)\r\n"
|
||||
+ "if(a == 7)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"onTrue\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "else\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"onFalse\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFor() {
|
||||
decompileMethod("testFor", "var a:* = 0;\r\n"
|
||||
+ "while(a<10)\r\n"
|
||||
+ "while(a < 10)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"a=\"+a);\r\n"
|
||||
+ "trace(\"a=\" + a);\r\n"
|
||||
+ "a++;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testForContinue() {
|
||||
decompileMethod("testForContinue", "var a:* = 0;\r\n"
|
||||
+ "for(;a<10;a=a+1)\r\n"
|
||||
+ "for(;a < 10;a = a + 1)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(a==9)\r\n"
|
||||
+ "if(a == 9)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(a==5)\r\n"
|
||||
+ "if(a == 5)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"part1\");\r\n"
|
||||
+ "continue;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"a=\"+a);\r\n"
|
||||
+ "if(a==7)\r\n"
|
||||
+ "trace(\"a=\" + a);\r\n"
|
||||
+ "if(a == 7)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"part2\");\r\n"
|
||||
+ "continue;\r\n"
|
||||
@@ -353,14 +339,13 @@ public class ActionScript3Test {
|
||||
+ "trace(\"part4\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"part5\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testTry() {
|
||||
decompileMethod("testTry", "var i:int = 0;\r\n"
|
||||
+ "i=7;\r\n"
|
||||
+ "i = 7;\r\n"
|
||||
+ "try\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"try body\");\r\n"
|
||||
@@ -371,14 +356,13 @@ public class ActionScript3Test {
|
||||
+ "}\r\n"
|
||||
+ "catch(e:Error)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"Error message:\"+e.message);\r\n"
|
||||
+ "trace(\"Stacktrace:\"+e.getStackTrace());\r\n"
|
||||
+ "trace(\"Error message:\" + e.message);\r\n"
|
||||
+ "trace(\"Stacktrace:\" + e.getStackTrace());\r\n"
|
||||
+ "}\r\n"
|
||||
+ "finally\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"Finally part\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -386,7 +370,7 @@ public class ActionScript3Test {
|
||||
decompileMethod("testSwitch", "var a:* = 5;\r\n"
|
||||
+ "switch(a)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "case 57*a:\r\n"
|
||||
+ "case 57 * a:\r\n"
|
||||
+ "trace(\"fiftyseven multiply a\");\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "case 13:\r\n"
|
||||
@@ -397,8 +381,7 @@ public class ActionScript3Test {
|
||||
+ "case 89:\r\n"
|
||||
+ "trace(\"eightynine\");\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -407,18 +390,17 @@ public class ActionScript3Test {
|
||||
+ "var b:* = 4;\r\n"
|
||||
+ "var c:* = 4;\r\n"
|
||||
+ "var d:* = 78;\r\n"
|
||||
+ "var e:* = a==b?c==d?1:7:3;\r\n"
|
||||
+ "trace(\"e=\"+e);\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "var e:* = a == b?c == d?1:7:3;\r\n"
|
||||
+ "trace(\"e=\" + e);\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testInnerIf() {
|
||||
decompileMethod("testInnerIf", "var a:* = 5;\r\n"
|
||||
+ "var b:* = 4;\r\n"
|
||||
+ "if(a==5)\r\n"
|
||||
+ "if(a == 5)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(b==6)\r\n"
|
||||
+ "if(b == 6)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"b==6\");\r\n"
|
||||
+ "}\r\n"
|
||||
@@ -429,7 +411,7 @@ public class ActionScript3Test {
|
||||
+ "}\r\n"
|
||||
+ "else\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(b==7)\r\n"
|
||||
+ "if(b == 7)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"b==7\");\r\n"
|
||||
+ "}\r\n"
|
||||
@@ -438,86 +420,80 @@ public class ActionScript3Test {
|
||||
+ "trace(\"b!=7\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"end\");\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "trace(\"end\");\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testVector() {
|
||||
decompileMethod("testVector", "var v:Vector.<String> = new Vector.<String>();\r\n"
|
||||
+ "v.push(\"hello\");\r\n"
|
||||
+ "v[0]=\"hi\";\r\n"
|
||||
+ "v[5*8-39]=\"hi2\";\r\n"
|
||||
+ "trace(v[0]);\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "v[0] = \"hi\";\r\n"
|
||||
+ "v[5 * 8 - 39] = \"hi2\";\r\n"
|
||||
+ "trace(v[0]);\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testProperty() {
|
||||
decompileMethod("testProperty", "var d:* = new TestClass1();\r\n"
|
||||
+ "var k:* = 7+8;\r\n"
|
||||
+ "if(k==15)\r\n"
|
||||
+ "var k:* = 7 + 8;\r\n"
|
||||
+ "if(k == 15)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "d.method(d.attrib*5);\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "d.method(d.attrib * 5);\r\n"
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRest() {
|
||||
decompileMethod("testRest", "trace(\"firstRest:\"+restval[0]);\r\n"
|
||||
decompileMethod("testRest", "trace(\"firstRest:\" + restval[0]);\r\n"
|
||||
+ "return firstp;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testParamNames() {
|
||||
decompileMethod("testParamNames", "return firstp+secondp+thirdp;\r\n", false);
|
||||
decompileMethod("testParamNames", "return firstp + secondp + thirdp;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testForEach() {
|
||||
decompileMethod("testForEach", "var list:Array = null;\r\n"
|
||||
+ "var item:* = undefined;\r\n"
|
||||
+ "list=new Array();\r\n"
|
||||
+ "list[0]=\"first\";\r\n"
|
||||
+ "list[1]=\"second\";\r\n"
|
||||
+ "list[2]=\"third\";\r\n"
|
||||
+ "list = new Array();\r\n"
|
||||
+ "list[0] = \"first\";\r\n"
|
||||
+ "list[1] = \"second\";\r\n"
|
||||
+ "list[2] = \"third\";\r\n"
|
||||
+ "for each (item in list)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"item #\"+item);\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "trace(\"item #\" + item);\r\n"
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testForEachObjectArray() {
|
||||
decompileMethod("testForEachObjectArray", "var list:Array = null;\r\n"
|
||||
+ "var test:Array = null;\r\n"
|
||||
+ "list=new Array();\r\n"
|
||||
+ "list[0]=\"first\";\r\n"
|
||||
+ "list[1]=\"second\";\r\n"
|
||||
+ "list[2]=\"third\";\r\n"
|
||||
+ "test=new Array();\r\n"
|
||||
+ "test[0]=0;\r\n"
|
||||
+ "list = new Array();\r\n"
|
||||
+ "list[0] = \"first\";\r\n"
|
||||
+ "list[1] = \"second\";\r\n"
|
||||
+ "list[2] = \"third\";\r\n"
|
||||
+ "test = new Array();\r\n"
|
||||
+ "test[0] = 0;\r\n"
|
||||
+ "for each (test[0] in list)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"item #\"+test[0]);\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "trace(\"item #\" + test[0]);\r\n"
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testForEachObjectAttribute() {
|
||||
decompileMethod("testForEachObjectAttribute", "var list:Array = null;\r\n"
|
||||
+ "list=new Array();\r\n"
|
||||
+ "list[0]=\"first\";\r\n"
|
||||
+ "list[1]=\"second\";\r\n"
|
||||
+ "list[2]=\"third\";\r\n"
|
||||
+ "list = new Array();\r\n"
|
||||
+ "list[0] = \"first\";\r\n"
|
||||
+ "list[1] = \"second\";\r\n"
|
||||
+ "list[2] = \"third\";\r\n"
|
||||
+ "for each (this.testPriv in list)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"item #\"+this.testPriv);\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "trace(\"item #\" + this.testPriv);\r\n"
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -528,23 +504,22 @@ public class ActionScript3Test {
|
||||
@Test
|
||||
public void testInlineFunctions() {
|
||||
decompileMethod("testInlineFunctions", "var first:String = null;\r\n"
|
||||
+ "first=\"value1\";\r\n"
|
||||
+ "var traceParameter:Function = new function(aParam:String):String\r\n"
|
||||
+ "first = \"value1\";\r\n"
|
||||
+ "var traceParameter:Function = function(aParam:String):String\r\n"
|
||||
+ "{\r\n"
|
||||
+ "var second:String = null;\r\n"
|
||||
+ "second=\"value2\";\r\n"
|
||||
+ "second=second+\"cc\";\r\n"
|
||||
+ "var traceParam2:Function = new function(bParam:String):String\r\n"
|
||||
+ "second = \"value2\";\r\n"
|
||||
+ "second = second + \"cc\";\r\n"
|
||||
+ "var traceParam2:Function = function(bParam:String):String\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(bParam+\",\"+aParam);\r\n"
|
||||
+ "return first+second+aParam+bParam;\r\n"
|
||||
+ "trace(bParam + \",\" + aParam);\r\n"
|
||||
+ "return first + second + aParam + bParam;\r\n"
|
||||
+ "};\r\n"
|
||||
+ "trace(second);\r\n"
|
||||
+ "traceParam2(aParam);\r\n"
|
||||
+ "return first;\r\n"
|
||||
+ "};\r\n"
|
||||
+ "traceParameter(\"hello\");\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "traceParameter(\"hello\");\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -553,15 +528,14 @@ public class ActionScript3Test {
|
||||
+ "switch(jj)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "case 1:\r\n"
|
||||
+ "jj=1;\r\n"
|
||||
+ "jj = 1;\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "case 2:\r\n"
|
||||
+ "jj=2;\r\n"
|
||||
+ "jj = 2;\r\n"
|
||||
+ "break;\r\n"
|
||||
+ "default:\r\n"
|
||||
+ "jj=3;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "jj = 3;\r\n"
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -570,11 +544,10 @@ public class ActionScript3Test {
|
||||
+ "var b:* = 0;\r\n"
|
||||
+ "var c:* = 0;\r\n"
|
||||
+ "var d:* = 0;\r\n"
|
||||
+ "d=c=b=a=5;\r\n"
|
||||
+ "d = c = b = a = 5;\r\n"
|
||||
+ "var e:TestClass2 = TestClass2.createMe(\"test\");\r\n"
|
||||
+ "e.attrib1=e.attrib2=e.attrib3=this.getCounter();\r\n"
|
||||
+ "this.traceIt(e.toString());\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "e.attrib1 = e.attrib2 = e.attrib3 = this.getCounter();\r\n"
|
||||
+ "this.traceIt(e.toString());\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -585,12 +558,12 @@ public class ActionScript3Test {
|
||||
+ "}\r\n"
|
||||
+ "catch(e:Error)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"error is :\"+e.message);\r\n"
|
||||
+ "trace(\"error is :\" + e.message);\r\n"
|
||||
+ "}\r\n"
|
||||
+ "finally\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"hi \");\r\n"
|
||||
+ "if(5==4)\r\n"
|
||||
+ "if(5 == 4)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "return _loc5_;\r\n"
|
||||
+ "}\r\n"
|
||||
@@ -601,18 +574,16 @@ public class ActionScript3Test {
|
||||
@Test
|
||||
public void testInnerFunctions() {
|
||||
decompileMethod("testInnerFunctions", "var s:int = 0;\r\n"
|
||||
+ "var innerFunc:Function = new function(b:String):*\r\n"
|
||||
+ "var innerFunc:Function = function(b:String):*\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(b);\r\n"
|
||||
+ "return;\r\n"
|
||||
+ "};\r\n"
|
||||
+ "var k:int = 5;\r\n"
|
||||
+ "if(k==6)\r\n"
|
||||
+ "if(k == 6)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "s=8;\r\n"
|
||||
+ "s = 8;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "innerFunc(a);\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "innerFunc(a);\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -624,15 +595,14 @@ public class ActionScript3Test {
|
||||
+ "var vclass:TestClass1 = null;\r\n"
|
||||
+ "var vnumber:* = NaN;\r\n"
|
||||
+ "var vobject:Object = null;\r\n"
|
||||
+ "vall=6;\r\n"
|
||||
+ "vstr=\"hello\";\r\n"
|
||||
+ "vuint=7;\r\n"
|
||||
+ "vint=-4;\r\n"
|
||||
+ "vclass=new TestClass1();\r\n"
|
||||
+ "vnumber=0.5;\r\n"
|
||||
+ "vnumber=6;\r\n"
|
||||
+ "vobject=vclass;\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "vall = 6;\r\n"
|
||||
+ "vstr = \"hello\";\r\n"
|
||||
+ "vuint = 7;\r\n"
|
||||
+ "vint = -4;\r\n"
|
||||
+ "vclass = new TestClass1();\r\n"
|
||||
+ "vnumber = 0.5;\r\n"
|
||||
+ "vnumber = 6;\r\n"
|
||||
+ "vobject = vclass;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -646,23 +616,20 @@ public class ActionScript3Test {
|
||||
+ "for each (item in dic)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(item);\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testNames() {
|
||||
decompileMethod("testNames", "var ns:* = this.getNamespace();\r\n"
|
||||
+ "var name:* = this.getName();\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "var name:* = this.getName();\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testComplexExpressions() {
|
||||
decompileMethod("testComplexExpressions", "var i:* = 0;\r\n"
|
||||
+ "var j:* = 0;\r\n"
|
||||
+ "j=i=i+(i=i+i++);\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "j = i = i + (i = i + i++);\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -670,22 +637,22 @@ public class ActionScript3Test {
|
||||
decompileMethod("testExpressions", "var arr:Array = null;\r\n"
|
||||
+ "var i:* = 5;\r\n"
|
||||
+ "var j:* = 5;\r\n"
|
||||
+ "if((i=i=i/2)==1||i==2)\r\n"
|
||||
+ "if((i = i = i / 2) == 1 || i == 2)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "arguments.concat(i);\r\n"
|
||||
+ "}\r\n"
|
||||
+ "else\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(i==0)\r\n"
|
||||
+ "if(i == 0)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "i=j++;\r\n"
|
||||
+ "i = j++;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "else\r\n"
|
||||
+ "{\r\n"
|
||||
+ "arr[0]();\r\n"
|
||||
+ "}\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return i==0;\r\n", false);
|
||||
+ "return i == 0;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -698,13 +665,12 @@ public class ActionScript3Test {
|
||||
decompileMethod("testLogicalComputing", "var b:* = false;\r\n"
|
||||
+ "var i:* = 5;\r\n"
|
||||
+ "var j:* = 7;\r\n"
|
||||
+ "if(i>j)\r\n"
|
||||
+ "if(i > j)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "j=9;\r\n"
|
||||
+ "b=true;\r\n"
|
||||
+ "j = 9;\r\n"
|
||||
+ "b = true;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "b=(i==0||i==1)&&j==0;\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "b = (i == 0 || i == 1) && j == 0;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -716,24 +682,22 @@ public class ActionScript3Test {
|
||||
+ "var b:* = 1;\r\n"
|
||||
+ "b++;\r\n"
|
||||
+ "var c:* = 1;\r\n"
|
||||
+ "b=c++;\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "b = c++;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDecl2() {
|
||||
decompileMethod("testDecl2", "var k:* = 0;\r\n"
|
||||
+ "var i:* = 5;\r\n"
|
||||
+ "i=i+7;\r\n"
|
||||
+ "if(i==5)\r\n"
|
||||
+ "i = i + 7;\r\n"
|
||||
+ "if(i == 5)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "if(i<8)\r\n"
|
||||
+ "if(i < 8)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=6;\r\n"
|
||||
+ "k = 6;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "}\r\n"
|
||||
+ "k=7;\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "k = 7;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -743,17 +707,16 @@ public class ActionScript3Test {
|
||||
+ "var extraLine:* = false;\r\n"
|
||||
+ "var r:* = 7;\r\n"
|
||||
+ "var t:* = 0;\r\n"
|
||||
+ "t=this.getInt();\r\n"
|
||||
+ "if(t+1<g.length)\r\n"
|
||||
+ "t = this.getInt();\r\n"
|
||||
+ "if(t + 1 < g.length)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "t++;\r\n"
|
||||
+ "h=true;\r\n"
|
||||
+ "h = true;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "if(t>=0)\r\n"
|
||||
+ "if(t >= 0)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"ch\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "}\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -762,17 +725,17 @@ public class ActionScript3Test {
|
||||
+ "do\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k++;\r\n"
|
||||
+ "if(k==7)\r\n"
|
||||
+ "if(k == 7)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=5*k;\r\n"
|
||||
+ "k = 5 * k;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "else\r\n"
|
||||
+ "{\r\n"
|
||||
+ "k=5-k;\r\n"
|
||||
+ "k = 5 - k;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "k--;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "while(k<9);\r\n"
|
||||
+ "while(k < 9);\r\n"
|
||||
+ "return 2;\r\n", false);
|
||||
}
|
||||
|
||||
@@ -780,32 +743,29 @@ public class ActionScript3Test {
|
||||
public void testWhileAnd() {
|
||||
decompileMethod("testWhileAnd", "var a:* = 5;\r\n"
|
||||
+ "var b:* = 10;\r\n"
|
||||
+ "while(a<10&&b>1)\r\n"
|
||||
+ "while(a < 10 && b > 1)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "a++;\r\n"
|
||||
+ "b--;\r\n"
|
||||
+ "}\r\n"
|
||||
+ "a=7;\r\n"
|
||||
+ "b=9;\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "a = 7;\r\n"
|
||||
+ "b = 9;\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testNamedAnonFunctions() {
|
||||
decompileMethod("testNamedAnonFunctions", "var test:* = new function testFunc(param1:*, param2:int, param3:Array):Boolean\r\n"
|
||||
+ "{\r\n"
|
||||
+ "return (param1 as TestClass2).attrib1==5;\r\n"
|
||||
+ "};\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "return (param1 as TestClass2).attrib1 == 5;\r\n"
|
||||
+ "};\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testStringConcat() {
|
||||
decompileMethod("testStringConcat", "var k:* = 8;\r\n"
|
||||
+ "this.traceIt(\"hello\"+5*6);\r\n"
|
||||
+ "this.traceIt(\"hello\"+(k-1));\r\n"
|
||||
+ "this.traceIt(\"hello\"+5+6);\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "this.traceIt(\"hello\" + 5 * 6);\r\n"
|
||||
+ "this.traceIt(\"hello\" + (k-1));\r\n"
|
||||
+ "this.traceIt(\"hello\" + 5 + 6);\r\n", false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -834,12 +794,12 @@ public class ActionScript3Test {
|
||||
public void testWhileTry2() {
|
||||
decompileMethod("testWhileTry2", "var j:* = undefined;\r\n"
|
||||
+ "var i:* = 0;\r\n"
|
||||
+ "for(;i<100;i++)\r\n"
|
||||
+ "for(;i < 100;i++)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "try\r\n"
|
||||
+ "{\r\n"
|
||||
+ "j=0;\r\n"
|
||||
+ "while(j<20)\r\n"
|
||||
+ "j = 0;\r\n"
|
||||
+ "while(j < 20)\r\n"
|
||||
+ "{\r\n"
|
||||
+ "trace(\"a\");\r\n"
|
||||
+ "j++;\r\n"
|
||||
@@ -855,7 +815,6 @@ public class ActionScript3Test {
|
||||
+ "}\r\n"
|
||||
+ "trace(\"after_try\");\r\n"
|
||||
+ "}\r\n"
|
||||
+ "trace(\"end\");\r\n"
|
||||
+ "return;\r\n", false);
|
||||
+ "trace(\"end\");\r\n", false);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user