Added missing compiler options to JUnitShell.

Added JUnitShellTest to JUnitSuite.

Change-Id: I5a4c3747bedaf5db84b0c7ffefdd83da64d060d7
Review-Link: https://gwt-review.googlesource.com/#/c/2611/


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@11605 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/junit/JUnitShell.java b/user/src/com/google/gwt/junit/JUnitShell.java
index 2555991..4838338 100644
--- a/user/src/com/google/gwt/junit/JUnitShell.java
+++ b/user/src/com/google/gwt/junit/JUnitShell.java
@@ -39,6 +39,11 @@
 import com.google.gwt.dev.util.arg.ArgHandlerDisableAggressiveOptimization;
 import com.google.gwt.dev.util.arg.ArgHandlerDisableCastChecking;
 import com.google.gwt.dev.util.arg.ArgHandlerDisableClassMetadata;
+import com.google.gwt.dev.util.arg.ArgHandlerDisableClusterSimilarFunctions;
+import com.google.gwt.dev.util.arg.ArgHandlerDisableInlineLiteralParameters;
+import com.google.gwt.dev.util.arg.ArgHandlerDisableOptimizeDataflow;
+import com.google.gwt.dev.util.arg.ArgHandlerDisableOrdinalizeEnums;
+import com.google.gwt.dev.util.arg.ArgHandlerDisableRemoveDuplicateFunctions;
 import com.google.gwt.dev.util.arg.ArgHandlerDisableRunAsync;
 import com.google.gwt.dev.util.arg.ArgHandlerDisableUpdateCheck;
 import com.google.gwt.dev.util.arg.ArgHandlerDraftCompile;
@@ -48,6 +53,7 @@
 import com.google.gwt.dev.util.arg.ArgHandlerLocalWorkers;
 import com.google.gwt.dev.util.arg.ArgHandlerLogLevel;
 import com.google.gwt.dev.util.arg.ArgHandlerMaxPermsPerPrecompile;
+import com.google.gwt.dev.util.arg.ArgHandlerOptimize;
 import com.google.gwt.dev.util.arg.ArgHandlerScriptStyle;
 import com.google.gwt.dev.util.arg.ArgHandlerWarDir;
 import com.google.gwt.dev.util.arg.ArgHandlerWorkDirOptional;
@@ -183,13 +189,19 @@
       registerHandler(new ArgHandlerScriptStyle(options));
       registerHandler(new ArgHandlerEnableAssertions(options));
       registerHandler(new ArgHandlerDisableAggressiveOptimization(options));
-      registerHandler(new ArgHandlerDisableClassMetadata(options));
       registerHandler(new ArgHandlerDisableCastChecking(options));
+      registerHandler(new ArgHandlerDisableClassMetadata(options));
+      registerHandler(new ArgHandlerDisableClusterSimilarFunctions(options));
+      registerHandler(new ArgHandlerDisableInlineLiteralParameters(options));
+      registerHandler(new ArgHandlerDisableOptimizeDataflow(options));
+      registerHandler(new ArgHandlerDisableOrdinalizeEnums(options));
+      registerHandler(new ArgHandlerDisableRemoveDuplicateFunctions(options));
       registerHandler(new ArgHandlerDisableRunAsync(options));
       registerHandler(new ArgHandlerDisableUpdateCheck(options));
       registerHandler(new ArgHandlerDraftCompile(options));
       registerHandler(new ArgHandlerMaxPermsPerPrecompile(options));
       registerHandler(new ArgHandlerLocalWorkers(options));
+      registerHandler(new ArgHandlerOptimize(options));
 
       /*
        * ----- Options specific to JUnitShell -----
diff --git a/user/test/com/google/gwt/junit/JUnitShellTest.java b/user/test/com/google/gwt/junit/JUnitShellTest.java
index 3b8dc48..dfa08ad 100644
--- a/user/test/com/google/gwt/junit/JUnitShellTest.java
+++ b/user/test/com/google/gwt/junit/JUnitShellTest.java
@@ -47,6 +47,13 @@
         shell.getModuleUrl("localhost", 1234, "example", 456));
   }
 
+
+  public void testArgOptimize() throws Exception {
+    parseGoodArgs("-optimize", "8", "-XdisableInlineLiteralParameters",
+        "-XdisableRemoveDuplicateFunctions", "-XdisableClusterSimilarFunctions",
+        "-XdisableOrdinalizeEnums", "-XdisableOptimizeDataflow");
+  }
+
   private void parseGoodArgs(String... argsToUse) {
     JUnitShell.ArgProcessor processor = new JUnitShell.ArgProcessor(shell);
     assertTrue("didn't accept good args", processor.processArgs(argsToUse));
diff --git a/user/test/com/google/gwt/junit/JUnitSuite.java b/user/test/com/google/gwt/junit/JUnitSuite.java
index 9d2a7b4..8b556b7 100644
--- a/user/test/com/google/gwt/junit/JUnitSuite.java
+++ b/user/test/com/google/gwt/junit/JUnitSuite.java
@@ -60,6 +60,8 @@
     suite.addTestSuite(PropertyDefiningStrategyTest.class);
     suite.addTestSuite(PropertyDefiningGWTTest.class);
 
+    suite.addTestSuite(JUnitShellTest.class);
+
     return suite;
   }
 }