Merges XYZpart suites and divide RequestFactory suite.

We no longer need manual grouping of the tests as we enabled
sharding.
Sharding breaks RequestFactory suite due to some tests
in EditorTest was interferring with each other in an untrivial
way so I just created a seperate Suite for RequestFactory/Editor
integration.

Also this patch enables the sharding for dev/CompilerTest.

Change-Id: I628c60d9b1d95e1faa4ab7add1ba4204c43ae1a0
Review-Link: https://gwt-review.googlesource.com/#/c/12120/
diff --git a/dev/BUILD b/dev/BUILD
index 33e8828..3f95d37 100644
--- a/dev/BUILD
+++ b/dev/BUILD
@@ -329,6 +329,7 @@
 GwtTestSuites(
     name = "tests",
     jvm_flags = ["-ea"],
+    sharding = {"dev.CompilerTest": 12},
     srcjars = [":dev-test-code"],
     tests = GWT_DEV_TESTS,
 )
diff --git a/user/test/com/google/gwt/i18n/I18NPart1Suite.java b/user/test/com/google/gwt/i18n/I18NPart1Suite.java
deleted file mode 100644
index 06593b6..0000000
--- a/user/test/com/google/gwt/i18n/I18NPart1Suite.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright 2013 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.i18n;
-
-import com.google.gwt.i18n.client.AnnotationsTest;
-import com.google.gwt.i18n.client.ArabicPluralsTest;
-import com.google.gwt.i18n.client.CurrencyTest;
-import com.google.gwt.i18n.client.CustomPluralsTest;
-import com.google.gwt.i18n.client.DateTimeFormat_de_Test;
-import com.google.gwt.i18n.client.DateTimeFormat_en_Test;
-import com.google.gwt.i18n.client.DateTimeFormat_fil_Test;
-import com.google.gwt.i18n.client.DateTimeFormat_pl_Test;
-import com.google.gwt.i18n.client.DateTimeParse_en_Test;
-import com.google.gwt.i18n.client.DateTimeParse_zh_CN_Test;
-import com.google.gwt.i18n.shared.GwtBidiUtilsTest;
-import com.google.gwt.junit.tools.GWTTestSuite;
-
-import junit.framework.Test;
-
-/**
- * I18N tests for client code running as a GWT test.
- */
-public class I18NPart1Suite {
-  public static Test suite() {
-    GWTTestSuite suite = new GWTTestSuite("I18N client tests");
-
-    // $JUnit-BEGIN$
-    suite.addTestSuite(ArabicPluralsTest.class);
-    suite.addTestSuite(AnnotationsTest.class);
-    suite.addTestSuite(CurrencyTest.class);
-    suite.addTestSuite(CustomPluralsTest.class);
-    suite.addTestSuite(DateTimeFormat_de_Test.class);
-    suite.addTestSuite(DateTimeFormat_en_Test.class);
-    suite.addTestSuite(DateTimeFormat_fil_Test.class);
-    suite.addTestSuite(DateTimeFormat_pl_Test.class);
-    suite.addTestSuite(DateTimeParse_en_Test.class);
-    suite.addTestSuite(DateTimeParse_zh_CN_Test.class);
-    suite.addTestSuite(GwtBidiUtilsTest.class);
-    // $JUnit-END$
-
-    return suite;
-  }
-}
diff --git a/user/test/com/google/gwt/i18n/I18NPart2Suite.java b/user/test/com/google/gwt/i18n/I18NSuite.java
similarity index 73%
rename from user/test/com/google/gwt/i18n/I18NPart2Suite.java
rename to user/test/com/google/gwt/i18n/I18NSuite.java
index d627400..7831885 100644
--- a/user/test/com/google/gwt/i18n/I18NPart2Suite.java
+++ b/user/test/com/google/gwt/i18n/I18NSuite.java
@@ -15,6 +15,16 @@
  */
 package com.google.gwt.i18n;
 
+import com.google.gwt.i18n.client.AnnotationsTest;
+import com.google.gwt.i18n.client.ArabicPluralsTest;
+import com.google.gwt.i18n.client.CurrencyTest;
+import com.google.gwt.i18n.client.CustomPluralsTest;
+import com.google.gwt.i18n.client.DateTimeFormat_de_Test;
+import com.google.gwt.i18n.client.DateTimeFormat_en_Test;
+import com.google.gwt.i18n.client.DateTimeFormat_fil_Test;
+import com.google.gwt.i18n.client.DateTimeFormat_pl_Test;
+import com.google.gwt.i18n.client.DateTimeParse_en_Test;
+import com.google.gwt.i18n.client.DateTimeParse_zh_CN_Test;
 import com.google.gwt.i18n.client.I18N2Test;
 import com.google.gwt.i18n.client.I18NTest;
 import com.google.gwt.i18n.client.I18N_en_US_Test;
@@ -39,6 +49,7 @@
 import com.google.gwt.i18n.client.RussianPluralsTest;
 import com.google.gwt.i18n.client.TimeZoneInfoTest;
 import com.google.gwt.i18n.client.TimeZoneTest;
+import com.google.gwt.i18n.shared.GwtBidiUtilsTest;
 import com.google.gwt.junit.tools.GWTTestSuite;
 
 import junit.framework.Test;
@@ -46,11 +57,21 @@
 /**
  * I18N tests for client code running as a GWT test.
  */
-public class I18NPart2Suite {
+public class I18NSuite {
   public static Test suite() {
     GWTTestSuite suite = new GWTTestSuite("I18N client tests");
 
-    // $JUnit-BEGIN$
+    suite.addTestSuite(ArabicPluralsTest.class);
+    suite.addTestSuite(AnnotationsTest.class);
+    suite.addTestSuite(CurrencyTest.class);
+    suite.addTestSuite(CustomPluralsTest.class);
+    suite.addTestSuite(DateTimeFormat_de_Test.class);
+    suite.addTestSuite(DateTimeFormat_en_Test.class);
+    suite.addTestSuite(DateTimeFormat_fil_Test.class);
+    suite.addTestSuite(DateTimeFormat_pl_Test.class);
+    suite.addTestSuite(DateTimeParse_en_Test.class);
+    suite.addTestSuite(DateTimeParse_zh_CN_Test.class);
+    suite.addTestSuite(GwtBidiUtilsTest.class);
     suite.addTestSuite(I18NTest.class);
     suite.addTestSuite(I18N2Test.class);
     suite.addTestSuite(I18N_pa_Arab_Test.class);
@@ -75,7 +96,6 @@
     suite.addTestSuite(RuntimeLocalesTest.class);
     suite.addTestSuite(TimeZoneInfoTest.class);
     suite.addTestSuite(TimeZoneTest.class);
-    // $JUnit-END$
 
     return suite;
   }
diff --git a/user/test/com/google/gwt/user/UiPart1Suite.java b/user/test/com/google/gwt/user/UiPart1Suite.java
deleted file mode 100644
index 62326ab..0000000
--- a/user/test/com/google/gwt/user/UiPart1Suite.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Copyright 2013 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.user;
-
-import com.google.gwt.junit.tools.GWTTestSuite;
-import com.google.gwt.user.client.CustomEventsTest;
-import com.google.gwt.user.client.ui.AbsolutePanelTest;
-import com.google.gwt.user.client.ui.AnchorTest;
-import com.google.gwt.user.client.ui.ButtonTest;
-import com.google.gwt.user.client.ui.CaptionPanelTest;
-import com.google.gwt.user.client.ui.CheckBoxTest;
-import com.google.gwt.user.client.ui.CompositeTest;
-import com.google.gwt.user.client.ui.CreateEventTest;
-import com.google.gwt.user.client.ui.CustomButtonTest;
-import com.google.gwt.user.client.ui.CustomScrollPanelTest;
-import com.google.gwt.user.client.ui.DOMRtlTest;
-import com.google.gwt.user.client.ui.DOMTest;
-import com.google.gwt.user.client.ui.DateBoxTest;
-import com.google.gwt.user.client.ui.DatePickerTest;
-import com.google.gwt.user.client.ui.DeckLayoutPanelTest;
-import com.google.gwt.user.client.ui.DeckPanelTest;
-import com.google.gwt.user.client.ui.DecoratedPopupTest;
-import com.google.gwt.user.client.ui.DecoratedStackPanelTest;
-import com.google.gwt.user.client.ui.DecoratedTabBarTest;
-import com.google.gwt.user.client.ui.DecoratedTabPanelTest;
-import com.google.gwt.user.client.ui.DecoratorPanelTest;
-import com.google.gwt.user.client.ui.DefaultSuggestionDisplayTest;
-import com.google.gwt.user.client.ui.DelegatingKeyboardListenerCollectionTest;
-import com.google.gwt.user.client.ui.DialogBoxTest;
-import com.google.gwt.user.client.ui.DirectionalTextHelperTest;
-import com.google.gwt.user.client.ui.DisclosurePanelTest;
-import com.google.gwt.user.client.ui.DockLayoutPanelRtlTest;
-import com.google.gwt.user.client.ui.DockLayoutPanelTest;
-import com.google.gwt.user.client.ui.DockPanelTest;
-import com.google.gwt.user.client.ui.ElementWrappingTest;
-import com.google.gwt.user.client.ui.FileUploadTest;
-import com.google.gwt.user.client.ui.FiniteWidgetIteratorTest;
-import com.google.gwt.user.client.ui.FlexTableTest;
-import com.google.gwt.user.client.ui.FlowPanelTest;
-import com.google.gwt.user.client.ui.FocusPanelTest;
-import com.google.gwt.user.client.ui.FormPanelTest;
-import com.google.gwt.user.client.ui.GridTest;
-import com.google.gwt.user.client.ui.impl.ClippedImagePrototypeTest;
-import com.google.gwt.user.client.ui.impl.FocusImplTest;
-
-import junit.framework.Test;
-
-/**
- * Tests in the user.client.ui package that start with A-G.
- * @see UiPart2Suite
- */
-public class UiPart1Suite {
-  public static Test suite() {
-    GWTTestSuite suite = new GWTTestSuite("Test for suite for all user widgets");
-
-    suite.addTestSuite(AbsolutePanelTest.class);
-    suite.addTestSuite(AnchorTest.class);
-    suite.addTestSuite(ButtonTest.class);
-    suite.addTestSuite(CaptionPanelTest.class);
-    suite.addTestSuite(CheckBoxTest.class);
-    suite.addTestSuite(ClassInitTest.class);
-    suite.addTestSuite(ClippedImagePrototypeTest.class);
-    suite.addTestSuite(CompositeTest.class);
-    suite.addTestSuite(CreateEventTest.class);
-    suite.addTestSuite(CustomButtonTest.class);
-    suite.addTestSuite(CustomEventsTest.class);
-    suite.addTestSuite(CustomScrollPanelTest.class);
-    suite.addTestSuite(DateBoxTest.class);
-    suite.addTestSuite(DatePickerTest.class);
-    suite.addTestSuite(DeckLayoutPanelTest.class);
-    suite.addTestSuite(DeckPanelTest.class);
-    suite.addTestSuite(DecoratedPopupTest.class);
-    suite.addTestSuite(DecoratedStackPanelTest.class);
-    suite.addTestSuite(DecoratedTabBarTest.class);
-    suite.addTestSuite(DecoratedTabPanelTest.class);
-    suite.addTestSuite(DecoratorPanelTest.class);
-    suite.addTestSuite(DefaultSuggestionDisplayTest.class);
-    suite.addTestSuite(DelegatingKeyboardListenerCollectionTest.class);
-    suite.addTestSuite(DialogBoxTest.class);
-    suite.addTestSuite(DirectionalTextHelperTest.class);
-    suite.addTestSuite(DisclosurePanelTest.class);
-    suite.addTestSuite(DockLayoutPanelRtlTest.class);
-    suite.addTestSuite(DockLayoutPanelTest.class);
-    suite.addTestSuite(DockPanelTest.class);
-    suite.addTestSuite(DOMTest.class);
-    suite.addTestSuite(DOMRtlTest.class);
-    suite.addTestSuite(ElementWrappingTest.class);
-    suite.addTestSuite(FileUploadTest.class);
-    suite.addTestSuite(FiniteWidgetIteratorTest.class);
-    suite.addTestSuite(FlexTableTest.class);
-    suite.addTestSuite(FlowPanelTest.class);
-    suite.addTestSuite(FocusImplTest.class);
-    suite.addTestSuite(FocusPanelTest.class);
-    suite.addTestSuite(FormPanelTest.class);
-    suite.addTestSuite(GridTest.class);
-
-    return suite;
-  }
-}
diff --git a/user/test/com/google/gwt/user/UiPart2Suite.java b/user/test/com/google/gwt/user/UiSuite.java
similarity index 61%
rename from user/test/com/google/gwt/user/UiPart2Suite.java
rename to user/test/com/google/gwt/user/UiSuite.java
index 05ff391..926d48b 100644
--- a/user/test/com/google/gwt/user/UiPart2Suite.java
+++ b/user/test/com/google/gwt/user/UiSuite.java
@@ -16,6 +16,43 @@
 package com.google.gwt.user;
 
 import com.google.gwt.junit.tools.GWTTestSuite;
+import com.google.gwt.user.client.CustomEventsTest;
+import com.google.gwt.user.client.ui.AbsolutePanelTest;
+import com.google.gwt.user.client.ui.AnchorTest;
+import com.google.gwt.user.client.ui.ButtonTest;
+import com.google.gwt.user.client.ui.CaptionPanelTest;
+import com.google.gwt.user.client.ui.CheckBoxTest;
+import com.google.gwt.user.client.ui.CompositeTest;
+import com.google.gwt.user.client.ui.CreateEventTest;
+import com.google.gwt.user.client.ui.CustomButtonTest;
+import com.google.gwt.user.client.ui.CustomScrollPanelTest;
+import com.google.gwt.user.client.ui.DOMRtlTest;
+import com.google.gwt.user.client.ui.DOMTest;
+import com.google.gwt.user.client.ui.DateBoxTest;
+import com.google.gwt.user.client.ui.DatePickerTest;
+import com.google.gwt.user.client.ui.DeckLayoutPanelTest;
+import com.google.gwt.user.client.ui.DeckPanelTest;
+import com.google.gwt.user.client.ui.DecoratedPopupTest;
+import com.google.gwt.user.client.ui.DecoratedStackPanelTest;
+import com.google.gwt.user.client.ui.DecoratedTabBarTest;
+import com.google.gwt.user.client.ui.DecoratedTabPanelTest;
+import com.google.gwt.user.client.ui.DecoratorPanelTest;
+import com.google.gwt.user.client.ui.DefaultSuggestionDisplayTest;
+import com.google.gwt.user.client.ui.DelegatingKeyboardListenerCollectionTest;
+import com.google.gwt.user.client.ui.DialogBoxTest;
+import com.google.gwt.user.client.ui.DirectionalTextHelperTest;
+import com.google.gwt.user.client.ui.DisclosurePanelTest;
+import com.google.gwt.user.client.ui.DockLayoutPanelRtlTest;
+import com.google.gwt.user.client.ui.DockLayoutPanelTest;
+import com.google.gwt.user.client.ui.DockPanelTest;
+import com.google.gwt.user.client.ui.ElementWrappingTest;
+import com.google.gwt.user.client.ui.FileUploadTest;
+import com.google.gwt.user.client.ui.FiniteWidgetIteratorTest;
+import com.google.gwt.user.client.ui.FlexTableTest;
+import com.google.gwt.user.client.ui.FlowPanelTest;
+import com.google.gwt.user.client.ui.FocusPanelTest;
+import com.google.gwt.user.client.ui.FormPanelTest;
+import com.google.gwt.user.client.ui.GridTest;
 import com.google.gwt.user.client.ui.HTMLPanelTest;
 import com.google.gwt.user.client.ui.HTMLTest;
 import com.google.gwt.user.client.ui.HeaderPanelTest;
@@ -72,17 +109,58 @@
 import com.google.gwt.user.client.ui.WidgetOnLoadTest;
 import com.google.gwt.user.client.ui.WidgetSubclassingTest;
 import com.google.gwt.user.client.ui.WidgetTest;
+import com.google.gwt.user.client.ui.impl.ClippedImagePrototypeTest;
+import com.google.gwt.user.client.ui.impl.FocusImplTest;
 
 import junit.framework.Test;
 
 /**
- * Tests in the user.client.ui package that start with H-Z.
- * @see UiPart1Suite
+ * Tests in the user.client.ui package.
  */
-public class UiPart2Suite {
+public class UiSuite {
   public static Test suite() {
     GWTTestSuite suite = new GWTTestSuite("Test for suite for all user widgets");
 
+    suite.addTestSuite(AbsolutePanelTest.class);
+    suite.addTestSuite(AnchorTest.class);
+    suite.addTestSuite(ButtonTest.class);
+    suite.addTestSuite(CaptionPanelTest.class);
+    suite.addTestSuite(CheckBoxTest.class);
+    suite.addTestSuite(ClassInitTest.class);
+    suite.addTestSuite(ClippedImagePrototypeTest.class);
+    suite.addTestSuite(CompositeTest.class);
+    suite.addTestSuite(CreateEventTest.class);
+    suite.addTestSuite(CustomButtonTest.class);
+    suite.addTestSuite(CustomEventsTest.class);
+    suite.addTestSuite(CustomScrollPanelTest.class);
+    suite.addTestSuite(DateBoxTest.class);
+    suite.addTestSuite(DatePickerTest.class);
+    suite.addTestSuite(DeckLayoutPanelTest.class);
+    suite.addTestSuite(DeckPanelTest.class);
+    suite.addTestSuite(DecoratedPopupTest.class);
+    suite.addTestSuite(DecoratedStackPanelTest.class);
+    suite.addTestSuite(DecoratedTabBarTest.class);
+    suite.addTestSuite(DecoratedTabPanelTest.class);
+    suite.addTestSuite(DecoratorPanelTest.class);
+    suite.addTestSuite(DefaultSuggestionDisplayTest.class);
+    suite.addTestSuite(DelegatingKeyboardListenerCollectionTest.class);
+    suite.addTestSuite(DialogBoxTest.class);
+    suite.addTestSuite(DirectionalTextHelperTest.class);
+    suite.addTestSuite(DisclosurePanelTest.class);
+    suite.addTestSuite(DockLayoutPanelRtlTest.class);
+    suite.addTestSuite(DockLayoutPanelTest.class);
+    suite.addTestSuite(DockPanelTest.class);
+    suite.addTestSuite(DOMTest.class);
+    suite.addTestSuite(DOMRtlTest.class);
+    suite.addTestSuite(ElementWrappingTest.class);
+    suite.addTestSuite(FileUploadTest.class);
+    suite.addTestSuite(FiniteWidgetIteratorTest.class);
+    suite.addTestSuite(FlexTableTest.class);
+    suite.addTestSuite(FlowPanelTest.class);
+    suite.addTestSuite(FocusImplTest.class);
+    suite.addTestSuite(FocusPanelTest.class);
+    suite.addTestSuite(FormPanelTest.class);
+    suite.addTestSuite(GridTest.class);
     suite.addTestSuite(HeaderPanelTest.class);
     suite.addTestSuite(HiddenTest.class);
     suite.addTestSuite(HistoryTest.class);
@@ -139,6 +217,7 @@
     suite.addTestSuite(WidgetOnLoadTest.class);
     suite.addTestSuite(WidgetSubclassingTest.class);
     suite.addTestSuite(WidgetTest.class);
+
     return suite;
   }
 }
diff --git a/user/test/com/google/web/bindery/requestfactory/gwt/RequestFactoryEditorSuite.java b/user/test/com/google/web/bindery/requestfactory/gwt/RequestFactoryEditorSuite.java
new file mode 100644
index 0000000..6bad1b6
--- /dev/null
+++ b/user/test/com/google/web/bindery/requestfactory/gwt/RequestFactoryEditorSuite.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2010 Google Inc.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.google.web.bindery.requestfactory.gwt;
+
+import com.google.gwt.junit.tools.GWTTestSuite;
+import com.google.web.bindery.requestfactory.gwt.client.ui.EditorTest;
+
+import junit.framework.Test;
+
+/**
+ * Tests RequestFactory integration with Editor framework.
+ */
+public class RequestFactoryEditorSuite {
+  public static Test suite() {
+    GWTTestSuite suite = new GWTTestSuite(
+        "Test suite for Requestfactory-Editor framework integration.");
+    suite.addTestSuite(EditorTest.class);
+    return suite;
+  }
+}
diff --git a/user/test/com/google/web/bindery/requestfactory/gwt/RequestFactorySuite.java b/user/test/com/google/web/bindery/requestfactory/gwt/RequestFactorySuite.java
index 1a55e85..02f1000 100644
--- a/user/test/com/google/web/bindery/requestfactory/gwt/RequestFactorySuite.java
+++ b/user/test/com/google/web/bindery/requestfactory/gwt/RequestFactorySuite.java
@@ -27,7 +27,6 @@
 import com.google.web.bindery.requestfactory.gwt.client.RequestFactoryPolymorphicTest;
 import com.google.web.bindery.requestfactory.gwt.client.RequestFactoryTest;
 import com.google.web.bindery.requestfactory.gwt.client.RequestFactoryUnicodeEscapingTest;
-import com.google.web.bindery.requestfactory.gwt.client.ui.EditorTest;
 import com.google.web.bindery.requestfactory.shared.BoxesAndPrimitivesTest;
 import com.google.web.bindery.requestfactory.shared.ComplexKeysTest;
 import com.google.web.bindery.requestfactory.shared.FanoutReceiverTest;
@@ -49,7 +48,6 @@
     suite.addTestSuite(RequestBatcherTest.class);
     suite.addTestSuite(BoxesAndPrimitivesTest.class);
     suite.addTestSuite(ComplexKeysTest.class);
-    suite.addTestSuite(EditorTest.class);
     suite.addTestSuite(FanoutReceiverTest.class);
     suite.addTestSuite(FindServiceTest.class);
     suite.addTestSuite(JsonRpcRequestFactoryTest.class);