You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by jo...@apache.org on 2022/07/28 17:37:34 UTC

[royale-compiler] 02/04: RoyaleUnit: improved commandArgs attribute parsing to ignore length == 0

This is an automated email from the ASF dual-hosted git repository.

joshtynjala pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-compiler.git

commit 5886fc433eca0c02ea8f57963ba4dca1ce951fc9
Author: Josh Tynjala <jo...@apache.org>
AuthorDate: Mon Jul 18 12:40:49 2022 -0700

    RoyaleUnit: improved commandArgs attribute parsing to ignore length == 0
---
 .../royale/test/ant/tasks/RoyaleUnitTask.java      | 55 +++++++++++-----------
 1 file changed, 28 insertions(+), 27 deletions(-)

diff --git a/royaleunit-ant-tasks/src/main/java/org/apache/royale/test/ant/tasks/RoyaleUnitTask.java b/royaleunit-ant-tasks/src/main/java/org/apache/royale/test/ant/tasks/RoyaleUnitTask.java
index 9f4f73f61..e746917ee 100644
--- a/royaleunit-ant-tasks/src/main/java/org/apache/royale/test/ant/tasks/RoyaleUnitTask.java
+++ b/royaleunit-ant-tasks/src/main/java/org/apache/royale/test/ant/tasks/RoyaleUnitTask.java
@@ -151,11 +151,6 @@ public class RoyaleUnitTask extends Task implements DynamicElement, DynamicAttri
         configuration.setCommand(executableFilePath);
     }
 
-    public void setCommandArgs(String[] customArgs)
-    {
-        configuration.setCommandArgs(customArgs);
-    }
-
     public void setHeadless(boolean headless)
     {
         configuration.setHeadless(headless);
@@ -225,29 +220,35 @@ public class RoyaleUnitTask extends Task implements DynamicElement, DynamicAttri
         }
     }
 
-	private String[] parseCommandArgs(String combined)
-    {
-		List<String> result = new ArrayList<String>();
-		Matcher matcher = COMMAND_ARGS_PATTERN.matcher(combined);
-		while (matcher.find())
+    public void setDynamicAttribute(String arg0, String arg1) throws BuildException
     {
-			String option = matcher.group();
-			result.add(option);
-		}
-        return result.toArray(new String[0]);
-	}
-
-    public void setDynamicAttribute(String arg0, String arg1)
-           throws BuildException {
-       if("commandargs".equals(arg0))
-       {
-            String[] commandArgs = parseCommandArgs(arg1);
-            configuration.setCommandArgs(commandArgs);
-       }
-       else
-       {	
+        if("commandargs".equals(arg0))
+        {
+            if (arg1.length() > 0)
+            {
+                String[] commandArgs = parseCommandArgs(arg1);
+                configuration.setCommandArgs(commandArgs);
+            }
+            else
+            {
+                configuration.setCommandArgs(null);
+            }
+        }
+        else
+        {	
             throw new BuildException( "The <royaleUnit> type doesn't support the " + arg0 + " attribute");
-       }
-   }
+        }
+    }
 
+    private String[] parseCommandArgs(String combined)
+    {
+        List<String> result = new ArrayList<String>();
+        Matcher matcher = COMMAND_ARGS_PATTERN.matcher(combined);
+        while (matcher.find())
+        {
+            String option = matcher.group();
+            result.add(option);
+        }
+        return result.toArray(new String[0]);
+    }
 }