diff --git a/trunk/test/com/jpexs/decompiler/flash/ActionScript2ParserTest.java b/trunk/test/com/jpexs/decompiler/flash/ActionScript2ParserTest.java index 203db447c..320dcb5a8 100644 --- a/trunk/test/com/jpexs/decompiler/flash/ActionScript2ParserTest.java +++ b/trunk/test/com/jpexs/decompiler/flash/ActionScript2ParserTest.java @@ -16,14 +16,10 @@ */ package com.jpexs.decompiler.flash; -import com.jpexs.decompiler.flash.action.Action; import com.jpexs.decompiler.flash.action.parser.ParseException; import com.jpexs.decompiler.flash.action.parser.script.ActionScriptParser; import com.jpexs.decompiler.flash.configuration.Configuration; -import com.jpexs.decompiler.flash.helpers.CodeFormatting; -import com.jpexs.decompiler.flash.helpers.HilightedTextWriter; import com.jpexs.decompiler.flash.tags.DoActionTag; -import com.jpexs.decompiler.flash.tags.base.ASMSource; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; @@ -45,13 +41,10 @@ public class ActionScript2ParserTest extends ActionStript2TestBase { private void parseAS2(String script) { DoActionTag asm = getFirstActionTag(); - HilightedTextWriter writer = new HilightedTextWriter(new CodeFormatting(), false); try { - Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); - String as = writer.toString(); ActionScriptParser par = new ActionScriptParser(); - asm.setActions(par.actionsFromString(as)); - } catch (InterruptedException | IOException | ParseException ex) { + asm.setActions(par.actionsFromString(script)); + } catch (IOException | ParseException ex) { fail("Unable to parse: " + script); } } diff --git a/trunk/test/com/jpexs/decompiler/flash/RecompileTest.java b/trunk/test/com/jpexs/decompiler/flash/RecompileTest.java index 1086a804b..f2c378091 100644 --- a/trunk/test/com/jpexs/decompiler/flash/RecompileTest.java +++ b/trunk/test/com/jpexs/decompiler/flash/RecompileTest.java @@ -83,37 +83,36 @@ public class RecompileTest { if (node.subNodes.isEmpty()) { TreeItem item = node.getItem(); if ((item instanceof ASMSource) && (node.export)) { - boolean retry; - do { - retry = false; + try { + ASMSource asm = ((ASMSource) item); + HilightedTextWriter writer = new HilightedTextWriter(new CodeFormatting(), false); + Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); + String as = writer.toString(); + asm.removePrefixAndSuffix(as); + ActionScriptParser par = new ActionScriptParser(); try { - ASMSource asm = ((ASMSource) item); - HilightedTextWriter writer = new HilightedTextWriter(new CodeFormatting(), false); - Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); - String as = writer.toString(); - ActionScriptParser par = new ActionScriptParser(); - try { - asm.setActions(par.actionsFromString(as)); - } catch (ParseException ex) { - fail("Unable to parse: " + item.getSwf().getShortFileName() + "/" + item.toString()); - } - writer = new HilightedTextWriter(new CodeFormatting(), false); - Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); - String as2 = writer.toString(); - try { - asm.setActions(par.actionsFromString(as2)); - } catch (ParseException ex) { - fail("Unable to parse: " + item.getSwf().getShortFileName() + "/" + item.toString()); - } - writer = new HilightedTextWriter(new CodeFormatting(), false); - Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); - String as3 = writer.toString(); - if (!as3.equals(as2)) { - fail("ActionScript is diffrent: " + item.getSwf().getShortFileName() + "/" + item.toString()); - } - } catch (InterruptedException | IOException | OutOfMemoryError | TranslateException | StackOverflowError ex) { + asm.setActions(par.actionsFromString(as)); + } catch (ParseException ex) { + fail("Unable to parse: " + item.getSwf().getShortFileName() + "/" + item.toString()); } - } while (retry); + writer = new HilightedTextWriter(new CodeFormatting(), false); + Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); + String as2 = writer.toString(); + asm.removePrefixAndSuffix(as2); + try { + asm.setActions(par.actionsFromString(as2)); + } catch (ParseException ex) { + fail("Unable to parse: " + item.getSwf().getShortFileName() + "/" + item.toString()); + } + writer = new HilightedTextWriter(new CodeFormatting(), false); + Action.actionsToSource(asm, asm.getActions(), asm.toString()/*FIXME?*/, writer); + String as3 = writer.toString(); + asm.removePrefixAndSuffix(as3); + if (!as3.equals(as2)) { + fail("ActionScript is diffrent: " + item.getSwf().getShortFileName() + "/" + item.toString()); + } + } catch (InterruptedException | IOException | OutOfMemoryError | TranslateException | StackOverflowError ex) { + } } } else { testAS2DirectEditingOneRecursive(node.subNodes);