diff --git a/trunk/test/com/jpexs/decompiler/flash/ActionScript2Test.java b/trunk/test/com/jpexs/decompiler/flash/ActionScript2Test.java index 23489c317..332a2b201 100644 --- a/trunk/test/com/jpexs/decompiler/flash/ActionScript2Test.java +++ b/trunk/test/com/jpexs/decompiler/flash/ActionScript2Test.java @@ -81,13 +81,13 @@ public class ActionScript2Test { public void frame2_ifWithElseTest() { compareSrc(2, "trace(\"ifWithElseTest\");\r\n" + "var i=5;\r\n" - + "if(i==258)\r\n" + + "if(i == 258)\r\n" + "{\r\n" + "trace(\"onTrue\");\r\n" + "}\r\n" + "else\r\n" + "{\r\n" - + "trace(\"onFalse\"+i);\r\n" + + "trace(\"onFalse\" + i);\r\n" + "}\r\n"); } @@ -95,9 +95,9 @@ public class ActionScript2Test { public void frame3_forTest() { compareSrc(3, "trace(\"forTest\");\r\n" + "var i=0;\r\n" - + "while(i<10)\r\n" + + "while(i < 10)\r\n" + "{\r\n" - + "trace(\"hello:\"+i);\r\n" + + "trace(\"hello:\" + i);\r\n" + "i++;\r\n" + "}\r\n"); } @@ -106,9 +106,9 @@ public class ActionScript2Test { public void frame4_whileTest() { compareSrc(4, "trace(\"whileTest\");\r\n" + "var i=0;\r\n" - + "while(i<10)\r\n" + + "while(i < 10)\r\n" + "{\r\n" - + "trace(\"hello:\"+i);\r\n" + + "trace(\"hello:\" + i);\r\n" + "i++;\r\n" + "}\r\n"); } @@ -117,13 +117,13 @@ public class ActionScript2Test { public void frame5_forWithContinueTest() { compareSrc(5, "trace(\"forWithContinueTest\");\r\n" + "var i=0;\r\n" - + "for(;i<10;i++)\r\n" + + "for(;i < 10;i++)\r\n" + "{\r\n" - + "trace(\"hello:\"+i);\r\n" - + "if(i==5)\r\n" + + "trace(\"hello:\" + i);\r\n" + + "if(i == 5)\r\n" + "{\r\n" + "trace(\"i==5\");\r\n" - + "if(i==7)\r\n" + + "if(i == 7)\r\n" + "{\r\n" + "continue;\r\n" + "}\r\n" @@ -139,10 +139,10 @@ public class ActionScript2Test { + "var i=0;\r\n" + "do\r\n" + "{\r\n" - + "trace(\"i=\"+i);\r\n" + + "trace(\"i=\" + i);\r\n" + "i++;\r\n" + "}\r\n" - + "while(i<10);\r\n" + + "while(i < 10);\r\n" + "trace(\"end\");\r\n"); } @@ -174,11 +174,11 @@ public class ActionScript2Test { public void frame8_strictEqualsTest() { compareSrc(8, "trace(\"strictEqualsTest\");\r\n" + "var i=5;\r\n" - + "if(i===5)\r\n" + + "if(i === 5)\r\n" + "{\r\n" + "trace(\"equals strict\");\r\n" + "}\r\n" - + "if(!(i===5))\r\n" + + "if(!(i === 5))\r\n" + "{\r\n" + "trace(\"not equals strict\");\r\n" + "}\r\n"); @@ -188,7 +188,7 @@ public class ActionScript2Test { public void frame9_switchForTest() { compareSrc(9, "trace(\"switchForTest\");\r\n" + "var i=0;\r\n" - + "for(;i<10;i++)\r\n" + + "for(;i < 10;i++)\r\n" + "{\r\n" + "switch(i)\r\n" + "{\r\n" @@ -202,7 +202,7 @@ public class ActionScript2Test { + "trace(\"ten\");\r\n" + "break;\r\n" + "case 1:\r\n" - + "if(i==7)\r\n" + + "if(i == 7)\r\n" + "{\r\n" + "continue;\r\n" + "}\r\n" @@ -218,7 +218,7 @@ public class ActionScript2Test { public void frame10_functionTest() { compareSrc(10, "function hello(what, second)\r\n" + "{\r\n" - + "trace(\"hello \"+what+\"! \"+second);\r\n" + + "trace(\"hello \" + what + \"! \" + second);\r\n" + "}\r\n" + "trace(\"functionTest\");\r\n" + "hello(\"friend\",7);\r\n"); @@ -228,11 +228,11 @@ public class ActionScript2Test { public void frame11_multipleConditionsTest() { compareSrc(11, "trace(\"multipleConditionsTest\");\r\n" + "var k=5;\r\n" - + "if(k==7&&k==8)\r\n" + + "if(k == 7 && k == 8)\r\n" + "{\r\n" + "trace(\"first\");\r\n" + "}\r\n" - + "if(k==9)\r\n" + + "if(k == 9)\r\n" + "{\r\n" + "trace(\"second\");\r\n" + "}\r\n" @@ -243,11 +243,11 @@ public class ActionScript2Test { public void frame12_multipleConditions2Test() { compareSrc(12, "trace(\"multipleConditions2Test\");\r\n" + "var k=5;\r\n" - + "if(k==7&&k==8)\r\n" + + "if(k == 7 && k == 8)\r\n" + "{\r\n" + "trace(\"first\");\r\n" + "}\r\n" - + "if(k==9||k==6)\r\n" + + "if(k == 9 || k == 6)\r\n" + "{\r\n" + "trace(\"second\");\r\n" + "}\r\n" @@ -260,10 +260,10 @@ public class ActionScript2Test { + "var a=7;\r\n" + "var b=8;\r\n" + "var c=9;\r\n" - + "a=register0=10;\r\n" - + "b=register0;\r\n" - + "c=register0;\r\n" - + "var d=register0;\r\n" + + "a=_loc0_=10;\r\n" + + "b=_loc0_;\r\n" + + "c=_loc0_;\r\n" + + "var d=_loc0_;\r\n" + "trace(d);\r\n"); } @@ -293,16 +293,16 @@ public class ActionScript2Test { + "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" + "}\r\n" - + "while(k<9);\r\n"); + + "while(k < 9);\r\n"); } @Test @@ -310,7 +310,7 @@ public class ActionScript2Test { compareSrc(16, "trace(\"whileAndTest\");\r\n" + "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" @@ -323,12 +323,12 @@ public class ActionScript2Test { public void frame17_forInTest() { compareSrc(17, "function testForIn()\r\n" + "{\r\n" - + "var register1=[];\r\n" - + "for(var register2 in register1)\r\n" + + "var _loc1_=[];\r\n" + + "for(var _loc2_ in _loc1_)\r\n" + "{\r\n" - + "if(register2>3)\r\n" + + "if(_loc2_ > 3)\r\n" + "{\r\n" - + "if(register2==5)\r\n" + + "if(_loc2_ == 5)\r\n" + "{\r\n" + "return 7;\r\n" + "}\r\n" @@ -355,7 +355,7 @@ public class ActionScript2Test { + "}\r\n" + "catch(e)\r\n" + "{\r\n" - + "trace(\"bug \"+e);\r\n" + + "trace(\"bug \" + e);\r\n" + "}\r\n" + "finally\r\n" + "{\r\n" @@ -368,7 +368,7 @@ public class ActionScript2Test { + "}\r\n" + "catch(e)\r\n" + "{\r\n" - + "trace(\"bug2 \"+e);\r\n" + + "trace(\"bug2 \" + e);\r\n" + "}\r\n" + "trace(\"next2\");\r\n" + "var k=5;\r\n" @@ -400,9 +400,9 @@ public class ActionScript2Test { + "trace(\"incDecTest\");\r\n" + "var i=5;\r\n" + "var b=i++;\r\n" - + "i=register0=i-1;\r\n" - + "var c=register0+5;\r\n" - + "trace(\"a:\"+a+\" b:\"+b+\" c:\"+c);\r\n" + + "i=_loc0_=i-1;\r\n" + + "var c=_loc0_ + 5;\r\n" + + "trace(\"a:\" + a + \" b:\" + b + \" c:\" + c);\r\n" + "var arr=[1,2,3];\r\n" + "arr[tst()]++;\r\n" + "var d=arr[tst()];\r\n" @@ -415,23 +415,23 @@ public class ActionScript2Test { + "var a=5;\r\n" + "var b=6;\r\n" + "var c=7;\r\n" - + "a=register0=4;\r\n" - + "b=register0;\r\n" - + "c=register0;\r\n" - + "var d=register0;\r\n" - + "a=register0=7;\r\n" - + "b=register0;\r\n" - + "c=register0;\r\n" - + "d=register0;\r\n" - + "if(register0>2)\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" + "{\r\n" + "trace(d);\r\n" + "}\r\n" - + "trace(d+1);\r\n" + + "trace(d + 1);\r\n" + "var i=0;\r\n" - + "while(i<5)\r\n" + + "while(i < 5)\r\n" + "{\r\n" - + "if(i==7)\r\n" + + "if(i == 7)\r\n" + "{\r\n" + "}\r\n" + "i++;\r\n" @@ -443,13 +443,13 @@ public class ActionScript2Test { compareSrc(22, "function a()\r\n" + "{\r\n" + "trace(\"hi\");\r\n" - + "var register1=5;\r\n" - + "if(register1==7)\r\n" + + "var _loc1_=5;\r\n" + + "if(_loc1_ == 7)\r\n" + "{\r\n" + "return undefined;\r\n" + "}\r\n" - + "register1=register1*9;\r\n" - + "trace(register1);\r\n" + + "_loc1_=_loc1_ * 9;\r\n" + + "trace(_loc1_);\r\n" + "}\r\n" + "trace(\"function2Test\");\r\n"); } @@ -458,20 +458,20 @@ public class ActionScript2Test { public void frame23_tryFunctionTest() { compareSrc(23, "function testtry()\r\n" + "{\r\n" - + "var register1=5;\r\n" + + "var _loc1_=5;\r\n" + "try\r\n" + "{\r\n" - + "if(register1==3)\r\n" + + "if(_loc1_ == 3)\r\n" + "{\r\n" + "return undefined;\r\n" + "}\r\n" - + "if(register1==4)\r\n" + + "if(_loc1_ == 4)\r\n" + "{\r\n" + "throw new Error();\r\n" + "}\r\n" + "else\r\n" + "{\r\n" - + "register1=7;\r\n" + + "_loc1_=7;\r\n" + "}\r\n" + "}\r\n" + "catch(e)\r\n" @@ -490,7 +490,7 @@ public class ActionScript2Test { public void frame24_ternarTest() { compareSrc(24, "trace(\"ternarTest\");\r\n" + "var a=5;\r\n" - + "var b=a!=4?3:2;\r\n" + + "var b=a != 4?3:2;\r\n" + "trace(b);\r\n"); } @@ -498,18 +498,18 @@ public class ActionScript2Test { public void frame25_forInInTest() { compareSrc(25, "function tst()\r\n" + "{\r\n" - + "var register2=[];\r\n" - + "register2[0]=[];\r\n" - + "for(var register3 in register2)\r\n" + + "var _loc2_=[];\r\n" + + "_loc2_[0]=[];\r\n" + + "for(var _loc3_ in _loc2_)\r\n" + "{\r\n" - + "for(var register1 in register3)\r\n" + + "for(var _loc1_ in _loc3_)\r\n" + "{\r\n" - + "if(register1==5)\r\n" + + "if(_loc1_ == 5)\r\n" + "{\r\n" + "return 5;\r\n" + "}\r\n" + "}\r\n" - + "if(register3==8)\r\n" + + "if(_loc3_ == 8)\r\n" + "{\r\n" + "return 3;\r\n" + "}\r\n" @@ -524,8 +524,8 @@ public class ActionScript2Test { public void frame26_registersFuncTest() { compareSrc(26, "function tst(px)\r\n" + "{\r\n" - + "var register1=57;\r\n" - + "register1=register1*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 +545,15 @@ public class ActionScript2Test { public void frame28_function3Test() { compareSrc(28, "function tst()\r\n" + "{\r\n" - + "var register1=5;\r\n" - + "c=register1=8;\r\n" + + "var _loc1_=5;\r\n" + + "c=_loc1_=8;\r\n" + "trace(\"hi\");\r\n" - + "trace(register1);\r\n" - + "c=register0=9;\r\n" - + "f=register0;\r\n" - + "d=register0;\r\n" - + "e=register0;\r\n" - + "if(register0>5)\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" + "{\r\n" + "trace(\"dd\");\r\n" + "}\r\n" @@ -574,8 +574,8 @@ public class ActionScript2Test { + "while(true)\r\n" + "{\r\n" + "a++;\r\n" - + "b=register0=b+2;\r\n" - + "if(c<10)\r\n" + + "b=_loc0_=b + 2;\r\n" + + "if(c < 10)\r\n" + "{\r\n" + "trace(c);\r\n" + "c++;\r\n" @@ -592,10 +592,10 @@ public class ActionScript2Test { + "var k=8;\r\n" + "do\r\n" + "{\r\n" - + "if(k==9)\r\n" + + "if(k == 9)\r\n" + "{\r\n" + "trace(\"h\");\r\n" - + "if(k==9)\r\n" + + "if(k == 9)\r\n" + "{\r\n" + "trace(\"f\");\r\n" + "continue;\r\n" @@ -604,7 +604,7 @@ public class ActionScript2Test { + "}\r\n" + "trace(\"gg\");\r\n" + "}\r\n" - + "while(k++, k<10);\r\n" + + "while(k++, k < 10);\r\n" + "trace(\"ss\");\r\n"); } @@ -612,16 +612,16 @@ public class ActionScript2Test { public void frame31_function4Test() { compareSrc(31, "function tst()\r\n" + "{\r\n" - + "var register1=5;\r\n" - + "while(register1<10)\r\n" + + "var _loc1_=5;\r\n" + + "while(_loc1_ < 10)\r\n" + "{\r\n" - + "if(register1==5)\r\n" + + "if(_loc1_ == 5)\r\n" + "{\r\n" - + "if(register1==6)\r\n" + + "if(_loc1_ == 6)\r\n" + "{\r\n" + "return true;\r\n" + "}\r\n" - + "register1=register1+1;\r\n" + + "_loc1_=_loc1_+1;\r\n" + "continue;\r\n" + "}\r\n" + "return false;\r\n" @@ -633,7 +633,8 @@ public class ActionScript2Test { @Test public void frame32_pushTest() { - compareSrc(32, "trace(\"pushTest\");\r\n"); + compareSrc(32, "trace(\"pushTest\");\r\n" + + "53;\r\n"); } @Test @@ -643,9 +644,9 @@ public class ActionScript2Test { + "while(true)\r\n" + "{\r\n" + "k++;\r\n" - + "if(k<10)\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" @@ -661,10 +662,10 @@ public class ActionScript2Test { + "do\r\n" + "{\r\n" + "trace(k);\r\n" - + "if(k==8)\r\n" + + "if(k == 8)\r\n" + "{\r\n" + "trace(\"a\");\r\n" - + "if(k==9)\r\n" + + "if(k == 9)\r\n" + "{\r\n" + "continue;\r\n" + "}\r\n" @@ -673,7 +674,7 @@ public class ActionScript2Test { + "}\r\n" + "k++;\r\n" + "}\r\n" - + "while(k=register0=k+5, k<20);\r\n" + + "while(k=_loc0_=k + 5, k < 20);\r\n" + "trace(\"end\");\r\n"); } @@ -746,6 +747,7 @@ public class ActionScript2Test { + "stopDrag();\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" @@ -756,4 +758,14 @@ public class ActionScript2Test { + "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"); + } } diff --git a/trunk/test/com/jpexs/decompiler/flash/ExportTest.java b/trunk/test/com/jpexs/decompiler/flash/ExportTest.java index 43169d453..9bea00884 100644 --- a/trunk/test/com/jpexs/decompiler/flash/ExportTest.java +++ b/trunk/test/com/jpexs/decompiler/flash/ExportTest.java @@ -89,7 +89,13 @@ public class ExportTest { File fdir = new File(TESTDATADIR + File.separator + "output" + File.separator + f.getName()); fdir.mkdirs(); - swf.exportActionScript(fdir.getAbsolutePath(), false, false); + swf.exportActionScript(new AbortRetryIgnoreHandler() { + + @Override + public int handle(Throwable thrown) { + return AbortRetryIgnoreHandler.ABORT; + } + },fdir.getAbsolutePath(), false, false); } catch (Exception ex) { fail(); }