Merge "Update timezone data to 2016d"
diff --git a/android_icu4j/Android.mk b/android_icu4j/Android.mk
new file mode 100644
index 0000000..a1641be
--- /dev/null
+++ b/android_icu4j/Android.mk
@@ -0,0 +1,90 @@
+#
+# Copyright (C) 2016 The Android Open Source Project
+#
+# 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.
+#
+
+LOCAL_PATH := $(call my-dir)
+
+#==========================================================
+# build repackaged ICU for target
+#
+# This is done in the libcore/JavaLibraries.mk file as there are circular
+# dependencies between ICU and libcore
+#==========================================================
+
+#==========================================================
+# build repackaged ICU tests for target
+#
+# Builds against core-libart and core-oj so that it can access all the
+# repackaged android.icu classes and methods and not just the ones available
+# through the Android API.
+#==========================================================
+include $(CLEAR_VARS)
+
+# Don't include this package in any target
+LOCAL_MODULE_TAGS := tests
+LOCAL_SRC_FILES := \
+    $(call all-java-files-under,src/main/tests) \
+    $(call all-java-files-under,cts-coverage/src/main/tests) \
+    $(call all-java-files-under,runner/src/main/java)
+LOCAL_JAVA_RESOURCE_DIRS := src/main/tests runner/src/main/java
+LOCAL_STATIC_JAVA_LIBRARIES := \
+    android-support-test
+LOCAL_JAVA_LIBRARIES := \
+        core-oj \
+        core-libart
+LOCAL_NO_STANDARD_LIBRARIES := true
+LOCAL_MODULE := android-icu4j-tests
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+#==========================================================
+# build repackaged ICU for host for testing purposes
+#
+# Uses the repackaged versions of the data jars
+#==========================================================
+include $(CLEAR_VARS)
+
+# Don't include this package in any target
+LOCAL_MODULE_TAGS := optional
+LOCAL_SRC_FILES := $(call all-java-files-under,src/main/java)
+LOCAL_STATIC_JAVA_LIBRARIES := \
+    icu4j-icudata-host-jarjar \
+    icu4j-icutzdata-host-jarjar
+LOCAL_JAVA_RESOURCE_DIRS := resources
+LOCAL_MODULE := android-icu4j-host
+include $(BUILD_HOST_JAVA_LIBRARY)
+
+#==========================================================
+# build repackaged ICU tests for host for testing purposes
+#
+# Run the tests using junit with the following command:
+#   java -cp ${ANDROID_BUILD_TOP}/out/host/linux-x86/framework/android-icu4j-tests-host.jar org.junit.runner.JUnitCore android.icu.dev.test.TestAll
+#
+# Run the tests using the ICU4J test framework with the following command:
+#   java -cp ${ANDROID_BUILD_TOP}/out/host/linux-x86/framework/android-icu4j-tests-host.jar android.icu.dev.test.TestAll
+#==========================================================
+include $(CLEAR_VARS)
+
+# Don't include this package in any target
+LOCAL_MODULE_TAGS := tests
+LOCAL_SRC_FILES := \
+    $(call all-java-files-under,src/main/tests) \
+    $(call all-java-files-under,runner/src/main/java) \
+    $(call all-java-files-under,runner/src/host/java)
+LOCAL_JAVA_RESOURCE_DIRS := src/main/tests
+LOCAL_STATIC_JAVA_LIBRARIES := \
+    android-icu4j-host \
+    junit
+LOCAL_MODULE := android-icu4j-tests-host
+include $(BUILD_HOST_JAVA_LIBRARY)
diff --git a/android_icu4j/cts-coverage/README.android b/android_icu4j/cts-coverage/README.android
new file mode 100644
index 0000000..e996c7c
--- /dev/null
+++ b/android_icu4j/cts-coverage/README.android
@@ -0,0 +1,3 @@
+This directory contains additional tests written for Android that ensure that the entire
+Android public ICU4J API has coverage. These tests will be added to ICU in a future release,
+at which point these tests can be deleted.
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/TestAll.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/TestAll.java
new file mode 100644
index 0000000..cb32763
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/TestAll.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+/**
+ * A suite of all the tests in this package and child packages.
+ */
+@RunWith(Suite.class)
+// Add classes in alphabetical order with a trailing comma even if it's the last entry.
+@Suite.SuiteClasses({
+        android.icu.cts.coverage.lang.TestAll.class,
+        android.icu.cts.coverage.text.TestAll.class,
+        android.icu.cts.coverage.util.TestAll.class,
+})
+public class TestAll {
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/lang/TestAll.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/lang/TestAll.java
new file mode 100644
index 0000000..2856244
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/lang/TestAll.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.lang;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+/**
+ * A suite of all the tests in this package.
+ */
+@RunWith(Suite.class)
+// Add classes in alphabetical order with a trailing comma even if it's the last entry.
+@Suite.SuiteClasses({
+        UCharacterTest.class,
+})
+public class TestAll {
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/lang/UCharacterTest.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/lang/UCharacterTest.java
new file mode 100644
index 0000000..0f24eaf
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/lang/UCharacterTest.java
@@ -0,0 +1,67 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.lang;
+
+import android.icu.cts.coverage.rules.ULocaleDefault;
+import android.icu.cts.coverage.rules.ULocaleDefaultRule;
+import android.icu.lang.UCharacter;
+import java.util.Locale;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Extra tests to improve CTS Test Coverage.
+ */
+@RunWith(JUnit4.class)
+public class UCharacterTest {
+
+    @Rule
+    public ULocaleDefaultRule uLocaleDefaultRule = new ULocaleDefaultRule();
+
+    @Test
+    public void testNameAliasing() {
+        int input = '\u01a2';
+        String alias = UCharacter.getNameAlias(input);
+        assertEquals("LATIN CAPITAL LETTER GHA", alias);
+        int output = UCharacter.getCharFromNameAlias(alias);
+        assertEquals("alias for '" + input + "'", input, output);
+    }
+
+    @Test
+    public void testToTitleCase_Locale_String_BreakIterator_I() {
+        String titleCase = UCharacter.toTitleCase(Locale.forLanguageTag("nl"), "ijsland", null,
+                UCharacter.FOLD_CASE_DEFAULT);
+        assertEquals("IJsland", titleCase);
+    }
+
+    @ULocaleDefault(languageTag = "nl")
+    @Test
+    public void testToTitleCase_String_BreakIterator_nl() {
+        String titleCase = UCharacter.toTitleCase("ijsland", null);
+        assertEquals("IJsland", titleCase);
+    }
+
+    @ULocaleDefault(languageTag = "en")
+    @Test
+    public void testToTitleCase_String_BreakIterator_en() {
+        String titleCase = UCharacter.toTitleCase("ijsland", null);
+        assertEquals("Ijsland", titleCase);
+    }
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/rules/ULocaleDefault.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/rules/ULocaleDefault.java
new file mode 100644
index 0000000..fc71879
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/rules/ULocaleDefault.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.rules;
+
+import android.icu.util.ULocale;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Mark a test method that requires a new default {@link ULocale}
+ *
+ * <p>Sets the default to the {@link ULocale} obtained by calling
+ * {@link ULocale#forLanguageTag(String)} with the value returned from {@link #languageTag()}
+ * before executing the method and restores the previous default afterwards.
+ */
+@Retention(RetentionPolicy.RUNTIME)
+@Target({ ElementType.METHOD})
+public @interface ULocaleDefault {
+    String languageTag();
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/rules/ULocaleDefaultRule.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/rules/ULocaleDefaultRule.java
new file mode 100644
index 0000000..72b2d69
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/rules/ULocaleDefaultRule.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.rules;
+
+import android.icu.util.ULocale;
+import org.junit.rules.MethodRule;
+import org.junit.runners.model.FrameworkMethod;
+import org.junit.runners.model.Statement;
+
+/**
+ * Add this as a rule to a JUnit 4 class to support switching the {@link ULocale#getDefault()} for
+ * the duration of the test method.
+ *
+ * <p>Only affects test methods that are annotated with {@link ULocaleDefault}.
+ *
+ * @see ULocaleDefault
+ */
+@SuppressWarnings("deprecation")
+public class ULocaleDefaultRule implements MethodRule {
+
+    @Override
+    public Statement apply(final Statement base, FrameworkMethod method, Object target) {
+        final ULocaleDefault annotation = method.getAnnotation(ULocaleDefault.class);
+        if (annotation == null) {
+            return base;
+        } else {
+            return new Statement() {
+                @Override
+                public void evaluate() throws Throwable {
+                    ULocale previousDefault = ULocale.getDefault();
+                    try {
+                        ULocale.setDefault(ULocale.forLanguageTag(annotation.languageTag()));
+                        base.evaluate();
+                    } finally {
+                        ULocale.setDefault(previousDefault);
+                    }
+                }
+            };
+        }
+    }
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/RelativeDateTimeFormatterTest.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/RelativeDateTimeFormatterTest.java
new file mode 100644
index 0000000..9fc5044
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/RelativeDateTimeFormatterTest.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.text;
+
+import android.icu.text.RelativeDateTimeFormatter;
+import android.icu.util.ULocale;
+import java.util.Locale;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Extra tests to improve CTS Test Coverage.
+ */
+@RunWith(JUnit4.class)
+public class RelativeDateTimeFormatterTest {
+
+    /**
+     * Ensure that it behaves the same with an implicit default locale as it does with explicitly
+     * specifying the default locale.
+     */
+    @Test
+    public void testGetInstance() {
+        RelativeDateTimeFormatter withImplicitDefaultLocale
+                = RelativeDateTimeFormatter.getInstance(Locale.CANADA);
+        RelativeDateTimeFormatter withExplicitDefaultLocale
+                = RelativeDateTimeFormatter.getInstance(ULocale.getDefault());
+
+        String formatWithImplicitDefaultLocale =
+                withImplicitDefaultLocale.format(5,
+                        RelativeDateTimeFormatter.Direction.NEXT,
+                        RelativeDateTimeFormatter.RelativeUnit.MINUTES);
+
+        String formatWithExplicitDefaultLocale =
+                withExplicitDefaultLocale.format(5,
+                        RelativeDateTimeFormatter.Direction.NEXT,
+                        RelativeDateTimeFormatter.RelativeUnit.MINUTES);
+
+        assertEquals(formatWithExplicitDefaultLocale, formatWithImplicitDefaultLocale);
+    }
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/TestAll.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/TestAll.java
new file mode 100644
index 0000000..1424606
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/TestAll.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.text;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+/**
+ * A suite of all the tests in this package.
+ */
+@RunWith(Suite.class)
+// Add classes in alphabetical order with a trailing comma even if it's the last entry.
+@Suite.SuiteClasses({
+        RelativeDateTimeFormatterTest.class,
+        TimeZoneNamesTest.class,
+        UnicodeSetTest.class,
+})
+public class TestAll {
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/TimeZoneNamesTest.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/TimeZoneNamesTest.java
new file mode 100644
index 0000000..5af46b9
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/TimeZoneNamesTest.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.text;
+
+import android.icu.text.TimeZoneNames;
+import android.icu.util.ULocale;
+import java.util.Locale;
+import java.util.Set;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Extra tests to improve CTS Test Coverage.
+ */
+@RunWith(JUnit4.class)
+public class TimeZoneNamesTest {
+
+    @Test
+    public void testGetInstance_Locale() {
+        TimeZoneNames uLocaleInstance = TimeZoneNames.getInstance(ULocale.CANADA);
+        TimeZoneNames localeInstance = TimeZoneNames.getInstance(Locale.CANADA);
+
+        Set<String> uLocaleAvailableIds = uLocaleInstance.getAvailableMetaZoneIDs();
+        Set<String> localeAvailableIds = localeInstance.getAvailableMetaZoneIDs();
+        assertEquals("Available ids", uLocaleAvailableIds, localeAvailableIds);
+
+        for (String availableId : uLocaleAvailableIds) {
+            long date = 1458385200000L;
+            TimeZoneNames.NameType nameType = TimeZoneNames.NameType.SHORT_GENERIC;
+            String uLocaleName = uLocaleInstance.getDisplayName(availableId, nameType, date);
+            String localeName = localeInstance.getDisplayName(availableId, nameType, date);
+            assertEquals("Id: " + availableId, uLocaleName, localeName);
+        }
+    }
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/UnicodeSetTest.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/UnicodeSetTest.java
new file mode 100644
index 0000000..d30ffc0
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/text/UnicodeSetTest.java
@@ -0,0 +1,57 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.text;
+
+import android.icu.text.UnicodeSet;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+import java.nio.charset.Charset;
+import java.util.Arrays;
+import java.util.Collections;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+@RunWith(JUnit4.class)
+public class UnicodeSetTest {
+    @Test
+    public void testAddAll_CharacterSequences() {
+        UnicodeSet unicodeSet = new UnicodeSet();
+        unicodeSet.addAll("a", "b");
+        assertEquals("[ab]", unicodeSet.toPattern(true));
+        unicodeSet.addAll("b", "x");
+        assertEquals("[abx]", unicodeSet.toPattern(true));
+        unicodeSet.addAll(new CharSequence[]{new StringBuilder("foo"), new StringBuffer("bar")});
+        assertEquals("[abx{bar}{foo}]", unicodeSet.toPattern(true));
+    }
+
+    @Test
+    public void testCompareTo() {
+        assertEquals(0, UnicodeSet.EMPTY.compareTo(Collections.emptyList()));
+        assertEquals(0, UnicodeSet.fromAll("a").compareTo(Collections.singleton("a")));
+
+        // Longer is bigger
+        assertTrue(UnicodeSet.ALL_CODE_POINTS.compareTo(Collections.emptyList()) > 0);
+        assertTrue(UnicodeSet.EMPTY.compareTo(Collections.singleton("a")) < 0);
+
+        // Equal length compares on first difference.
+        assertTrue(UnicodeSet.fromAll("a").compareTo(Collections.singleton("b")) < 0);
+        assertTrue(UnicodeSet.fromAll("ab").compareTo(Arrays.asList("a", "c")) < 0);
+        assertTrue(UnicodeSet.fromAll("b").compareTo(Collections.singleton("a")) > 0);
+    }
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/util/CurrencyTest.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/util/CurrencyTest.java
new file mode 100644
index 0000000..26f530f
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/util/CurrencyTest.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.util;
+
+import android.icu.util.Currency;
+import android.icu.util.ULocale;
+import java.util.Locale;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Extra tests to improve CTS Test Coverage.
+ */
+@RunWith(JUnit4.class)
+public class CurrencyTest {
+
+    @Test
+    public void testGetName_Locale_Int_String_BooleanArray() {
+        Currency currency = Currency.getInstance(ULocale.CHINA);
+        boolean[] isChoiceFormat = new boolean[1];
+        int nameStyle = Currency.LONG_NAME;
+        String pluralCount = "";
+        String ulocaleName =
+                currency.getName(ULocale.CANADA, nameStyle, pluralCount, isChoiceFormat);
+        assertEquals("Chinese Yuan", ulocaleName);
+        String localeName = currency.getName(Locale.CANADA, nameStyle, pluralCount, isChoiceFormat);
+        assertEquals("currency name mismatch", ulocaleName, localeName);
+    }
+
+    @Test
+    public void testGetDefaultFractionDigits_CurrencyUsage() {
+        Currency currency = Currency.getInstance(ULocale.CHINA);
+        int cashFractionDigits = currency.getDefaultFractionDigits(Currency.CurrencyUsage.CASH);
+        assertEquals(2, cashFractionDigits);
+    }
+
+    @Test
+    public void testGetRoundingIncrement() {
+        Currency currency = Currency.getInstance(ULocale.JAPAN);
+        // It appears as though this always returns 0 irrespective of the currency.
+        double roundingIncrement = currency.getRoundingIncrement();
+        assertEquals(0, roundingIncrement, 0);
+    }
+
+    @Test
+    public void testGetRoundingIncrement_CurrencyUsage() {
+        Currency currency = Currency.getInstance(ULocale.JAPAN);
+        // It appears as though this always returns 0 irrespective of the currency or usage.
+        double roundingIncrement = currency.getRoundingIncrement(Currency.CurrencyUsage.CASH);
+        assertEquals(0, roundingIncrement, 0);
+    }
+}
diff --git a/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/util/TestAll.java b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/util/TestAll.java
new file mode 100644
index 0000000..d1e78d2
--- /dev/null
+++ b/android_icu4j/cts-coverage/src/main/tests/android/icu/cts/coverage/util/TestAll.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.cts.coverage.util;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+/**
+ * A suite of all the tests in this package.
+ */
+@RunWith(Suite.class)
+// Add classes in alphabetical order with a trailing comma even if it's the last entry.
+@Suite.SuiteClasses({
+        CurrencyTest.class,
+})
+public class TestAll {
+}
diff --git a/android_icu4j/runner/src/host/java/android/support/test/internal/util/AndroidRunnerParams.java b/android_icu4j/runner/src/host/java/android/support/test/internal/util/AndroidRunnerParams.java
new file mode 100644
index 0000000..e6d4501
--- /dev/null
+++ b/android_icu4j/runner/src/host/java/android/support/test/internal/util/AndroidRunnerParams.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.support.test.internal.util;
+
+/**
+ * A dummy class used to support running ICU JUnit tests on host.
+ */
+public class AndroidRunnerParams {
+
+    public boolean isSkipExecution() {
+        return false;
+    }
+}
diff --git a/android_icu4j/runner/src/main/java/android/icu/junit/ErrorReportingRunner.java b/android_icu4j/runner/src/main/java/android/icu/junit/ErrorReportingRunner.java
new file mode 100644
index 0000000..38cd26f
--- /dev/null
+++ b/android_icu4j/runner/src/main/java/android/icu/junit/ErrorReportingRunner.java
@@ -0,0 +1,123 @@
+package android.icu.junit;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Iterator;
+import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import org.junit.runner.Description;
+import org.junit.runner.Runner;
+import org.junit.runner.manipulation.Filter;
+import org.junit.runner.manipulation.Filterable;
+import org.junit.runner.manipulation.NoTestsRemainException;
+import org.junit.runner.notification.Failure;
+import org.junit.runner.notification.RunNotifier;
+import org.junit.runners.model.InitializationError;
+
+/**
+ * A copy of the JUnit 4.10 {@link org.junit.internal.runners.ErrorReportingRunner} class.
+ *
+ * <p>Modified as follows:</p>
+ *
+ * <ul>
+ * <li>allows the class in error to be specified by name rather than {@link Class} object so that it
+ * can be used for when the class could not be found. See
+ * {@link #ErrorReportingRunner(String, Throwable)} and
+ * {@link #fTestClassName}.
+ * <li>supports filtering of the individual causes. See {@link #filter(Filter)}.
+ * <li>uses the cause to construct the description allowing filtering on specific error messages.
+ * See {@link #describeCause(Throwable)}.
+ * </ul>
+ *
+ * See https://github.com/junit-team/junit/issues/1253
+ */
+// android-changed - implements Filterable
+class ErrorReportingRunner extends Runner implements Filterable {
+    private final List<Throwable> fCauses;
+
+    // android-changed - changed type from Class<?> and renamed from fTestClass.
+    private final String fTestClassName;
+
+    public ErrorReportingRunner(String testClassName, Throwable cause) {
+        fTestClassName = testClassName;
+        // Take a copy so that they can be modified during filtering if necessary.
+        fCauses = new ArrayList<>(getCauses(cause));
+    }
+    // end android-changed
+
+    @Override
+    public Description getDescription() {
+        // android-changed - renamed from fTestClass.
+        Description description= Description.createSuiteDescription(fTestClassName);
+        // end android-changed
+        for (Throwable each : fCauses)
+            description.addChild(describeCause(each));
+        return description;
+    }
+
+    @Override
+    public void run(RunNotifier notifier) {
+        for (Throwable each : fCauses)
+            runCause(each, notifier);
+    }
+
+    // android-changed - added filtering support
+    @Override
+    public void filter(Filter filter) throws NoTestsRemainException {
+        Iterator<Throwable> iterator = fCauses.iterator();
+        while (iterator.hasNext()) {
+            Throwable cause = iterator.next();
+            Description description = describeCause(cause);
+            if (!filter.shouldRun(description)) {
+                iterator.remove();
+            }
+        }
+
+        // If there are no causes left then throw an exception to cause the parent runner, if any,
+        // to remove this runner from its list.
+        if (fCauses.isEmpty()) {
+            throw new NoTestsRemainException();
+        }
+    }
+    // end android-changed
+
+    @SuppressWarnings("deprecation")
+    private List<Throwable> getCauses(Throwable cause) {
+        if (cause instanceof InvocationTargetException)
+            return getCauses(cause.getCause());
+        if (cause instanceof InitializationError)
+            return ((InitializationError) cause).getCauses();
+        if (cause instanceof org.junit.internal.runners.InitializationError)
+            return ((org.junit.internal.runners.InitializationError) cause)
+                    .getCauses();
+        return Arrays.asList(cause);
+    }
+
+    private Description describeCause(Throwable child) {
+        // android-changed - create a description that incorporates the cause
+        // Extract the first line of the message, exclude any special characters that could
+        // cause problems with later parsing of the description.
+        String message = child.getMessage();
+        Matcher matcher = Pattern.compile("^([^()\n]*).*").matcher(message);
+        if (matcher.matches()) {
+            message = matcher.group(1);
+        }
+
+        // Create a suite description (need to use that method because the createTestDescription
+        // methods use a class rather than a class name).
+        String causeClassName = child.getClass().getName();
+        return Description.createSuiteDescription(
+                String.format("initializationError[%s: %s](%s)",
+                        causeClassName, message, fTestClassName));
+        // end android-changed
+    }
+
+    private void runCause(Throwable child, RunNotifier notifier) {
+        Description description= describeCause(child);
+        notifier.fireTestStarted(description);
+        notifier.fireTestFailure(new Failure(description, child));
+        notifier.fireTestFinished(description);
+    }
+}
\ No newline at end of file
diff --git a/android_icu4j/runner/src/main/java/android/icu/junit/IcuFrameworkTest.java b/android_icu4j/runner/src/main/java/android/icu/junit/IcuFrameworkTest.java
new file mode 100644
index 0000000..b6fc748
--- /dev/null
+++ b/android_icu4j/runner/src/main/java/android/icu/junit/IcuFrameworkTest.java
@@ -0,0 +1,133 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.junit;
+
+import android.icu.dev.test.TestFmwk;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import junit.framework.AssertionFailedError;
+import org.junit.runner.Description;
+
+/**
+ * Represents a test within a {@link TestFmwk} class.
+ */
+final class IcuFrameworkTest implements Comparable<IcuFrameworkTest> {
+
+    private static final String[] EMPTY_ARGS = new String[0];
+
+    private static final Pattern EXTRACT_ERROR_INFO = Pattern.compile(
+            "^[A-Za-z0-9_]+ \\{(\n.*)\n\\}.*", Pattern.DOTALL);
+
+    /**
+     * The {@link TestFmwk} instance on which the tests will be run.
+     */
+    private final TestFmwk testFmwk;
+
+    private final TestFmwk.Target target;
+
+    /**
+     * The name of the individual target to run.
+     */
+    private final String methodName;
+
+    IcuFrameworkTest(TestFmwk testFmwk, TestFmwk.Target target, String methodName) {
+        this.testFmwk = testFmwk;
+        this.target = target;
+        this.methodName = methodName;
+    }
+
+    public String getMethodName() {
+        return methodName;
+    }
+
+    /**
+     * Runs the target.
+     */
+    public void run() {
+        test_for_TestFmwk_Run();
+    }
+
+    /**
+     * A special method to avoid the TestFmwk from throwing an InternalError when an error occurs
+     * during execution of the test but outside the actual test method, e.g. in a
+     * {@link TestFmwk#validate()} method. See http://bugs.icu-project.org/trac/ticket/12183
+     *
+     * <p>DO NOT CHANGE THE NAME
+     */
+    private void test_for_TestFmwk_Run() {
+        StringWriter stringWriter = new StringWriter();
+        PrintWriter log = new PrintWriter(stringWriter);
+
+        TestFmwk.TestParams localParams = TestFmwk.TestParams.create(EMPTY_ARGS, log);
+        if (localParams == null) {
+            throw new IllegalStateException("Could not create params");
+        }
+
+        // We don't want an error summary as we are only running one test.
+        localParams.errorSummary = null;
+
+        try {
+            // Make sure that the TestFmwk is initialized with the correct parameters. This method
+            // is being called solely for its side effect of updating the TestFmwk.params field.
+            testFmwk.resolveTarget(localParams);
+
+            // Run the target.
+            target.run();
+        } catch (Exception e) {
+            // Output the exception to the log and make sure it is treated as an error.
+            e.printStackTrace(log);
+            localParams.errorCount++;
+        }
+
+        // Treat warnings as errors.
+        int errorCount = localParams.errorCount + localParams.warnCount;
+
+        // Ensure that all data is written to the StringWriter.
+        log.flush();
+
+        // Treat warnings as errors.
+        String information = stringWriter.toString();
+        if (errorCount != 0) {
+            // Remove unnecessary formatting.
+            Matcher matcher = EXTRACT_ERROR_INFO.matcher(information);
+            if (matcher.matches()) {
+                information = matcher.group(1)/*.replace("\n    ", "\n")*/;
+            }
+
+            // Also append the logs to the console output.
+            String output = "Failure: " + getDescription() + ", due to "
+                    + errorCount + " error(s)\n" + information;
+
+            throw new AssertionFailedError(output);
+        }
+    }
+
+    /**
+     * Get the JUnit {@link Description}
+     */
+    public Description getDescription() {
+        // Get a description for the specific method within the class.
+        return Description.createTestDescription(testFmwk.getClass(), methodName);
+    }
+
+    @Override
+    public int compareTo(IcuFrameworkTest o) {
+        return methodName.compareTo(o.methodName);
+    }
+}
diff --git a/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestFmwkRunner.java b/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestFmwkRunner.java
new file mode 100644
index 0000000..965ff1d
--- /dev/null
+++ b/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestFmwkRunner.java
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.junit;
+
+import android.icu.dev.test.TestFmwk;
+import android.support.test.internal.util.AndroidRunnerParams;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import org.junit.runner.Description;
+import org.junit.runner.notification.RunNotifier;
+import org.junit.runners.model.Statement;
+
+/**
+ * A {@link org.junit.runner.Runner} that can be used to run a class that is a {@link TestFmwk}
+ * but not a {@link android.icu.dev.test.TestFmwk.TestGroup}
+ */
+public class IcuTestFmwkRunner extends IcuTestParentRunner<IcuFrameworkTest> {
+
+    /**
+     * A {@link Statement} that does nothing, used when skipping execution.
+     */
+    private static final Statement EMPTY_STATEMENT = new Statement() {
+        @Override
+        public void evaluate() throws Throwable {
+        }
+    };
+
+    private final boolean skipExecution;
+
+    private final List<IcuFrameworkTest> tests;
+
+    /**
+     * The constructor used when this class is used with {@code @RunWith(...)}.
+     */
+    public IcuTestFmwkRunner(Class<?> testClass)
+            throws Exception {
+        this(checkClass(testClass), null);
+    }
+
+    /**
+     * Make sure that the supplied test class is supported by this.
+     */
+    private static Class<? extends TestFmwk> checkClass(Class<?> testClass) {
+        if (!TestFmwk.class.isAssignableFrom(testClass)) {
+            throw new IllegalStateException(
+                    "Cannot use " + IcuTestFmwkRunner.class + " for running "
+                            + testClass + " as it is not a " + TestFmwk.class);
+        }
+        if (TestFmwk.TestGroup.class.isAssignableFrom(testClass)) {
+            throw new IllegalStateException(
+                    "Cannot use " + IcuTestFmwkRunner.class + " for running "
+                            + testClass + " as it is a " + TestFmwk.TestGroup.class
+                            + ": Use @RunWith(" + IcuTestGroupRunner.class.getSimpleName()
+                            + ".class) instead");
+        }
+
+        return testClass.asSubclass(TestFmwk.class);
+    }
+
+    public IcuTestFmwkRunner(Class<? extends TestFmwk> testFmwkClass,
+            AndroidRunnerParams runnerParams)
+            throws Exception {
+        super(testFmwkClass);
+
+        this.skipExecution = runnerParams != null && runnerParams.isSkipExecution();
+
+        // Create a TestFmwk and make sure that it's initialized properly.
+        TestFmwk testFmwk = TestFmwkUtils.newTestFmwkInstance(testFmwkClass);
+
+        tests = new ArrayList<>();
+
+        TestFmwk.Target target = TestFmwkUtils.getTargets(testFmwk);
+        while (target != null) {
+            String name = target.name;
+            // Just ignore targets that do not have a name, they are do nothing place holders.
+            if (name != null) {
+                tests.add(new IcuFrameworkTest(testFmwk, target, name));
+            }
+            target = target.getNext();
+        }
+
+        // If the class has no tests then fail.
+        if (tests.isEmpty()) {
+            throw new IllegalStateException("Cannot find any tests for " + testFmwkClass);
+        }
+
+        // Sort the methods to ensure consistent ordering.
+        Collections.sort(tests);
+    }
+
+    @Override
+    protected List<IcuFrameworkTest> getChildren() {
+        return tests;
+    }
+
+    @Override
+    protected Description describeChild(IcuFrameworkTest child) {
+        return child.getDescription();
+    }
+
+    @Override
+    protected void runChild(final IcuFrameworkTest child, RunNotifier notifier) {
+        Description description = describeChild(child);
+        Statement statement;
+        if (skipExecution) {
+            statement = EMPTY_STATEMENT;
+        } else {
+            statement = new Statement() {
+                @Override
+                public void evaluate() throws Throwable {
+                    child.run();
+                }
+            };
+        }
+        runLeaf(statement, description, notifier);
+    }
+}
diff --git a/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestGroupRunner.java b/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestGroupRunner.java
new file mode 100644
index 0000000..7cead85
--- /dev/null
+++ b/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestGroupRunner.java
@@ -0,0 +1,98 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.junit;
+
+import android.icu.dev.test.TestFmwk;
+import java.util.ArrayList;
+import java.util.List;
+import org.junit.runner.Description;
+import org.junit.runner.Runner;
+import org.junit.runner.notification.RunNotifier;
+import org.junit.runners.model.RunnerBuilder;
+
+/**
+ * A {@link org.junit.runner.Runner} that can be used to run a class that is a
+ * {@link TestFmwk.TestGroup} but not a {@link TestFmwk}
+ */
+public class IcuTestGroupRunner extends IcuTestParentRunner<Runner> {
+
+    private final List<Runner> runners;
+
+    /**
+     * The constructor used when this class is used with {@code @RunWith(...)}.
+     */
+    public IcuTestGroupRunner(Class<?> testClass, RunnerBuilder runnerBuilder)
+            throws Exception {
+        super(testClass);
+
+        Class<? extends TestFmwk.TestGroup> testGroupClass = checkClass(testClass);
+
+        // Create a TestGroup and make sure that it's initialized properly.
+        TestFmwk.TestGroup testGroup = TestFmwkUtils.newTestFmwkInstance(testGroupClass);
+
+        runners = new ArrayList<>();
+        List<String> classNames = TestFmwkUtils.getClassNames(testGroup);
+        ClassLoader classLoader = testGroupClass.getClassLoader();
+        for (String className : classNames) {
+            Runner runner;
+
+            try {
+                Class<?> childTestClass = Class.forName(className, false, classLoader);
+                runner = runnerBuilder.safeRunnerForClass(childTestClass);
+            } catch (ClassNotFoundException e) {
+                runner = new ErrorReportingRunner(className, e);
+            }
+
+            runners.add(runner);
+        }
+    }
+
+    /**
+     * Make sure that the supplied test class is supported by this.
+     */
+    private static Class<? extends TestFmwk.TestGroup> checkClass(Class<?> testClass) {
+        if (!TestFmwk.TestGroup.class.isAssignableFrom(testClass)) {
+            if (TestFmwk.class.isAssignableFrom(testClass)) {
+                throw new IllegalStateException(
+                        "Cannot use " + IcuTestGroupRunner.class + " for running "
+                                + testClass + " as it is a " + TestFmwk.class
+                                + ": Use @RunWith(" + IcuTestFmwkRunner.class.getSimpleName()
+                                + ".class) instead");
+            }
+            throw new IllegalStateException(
+                    "Cannot use " + IcuTestGroupRunner.class + " for running "
+                            + testClass + " as it is not a " + TestFmwk.TestGroup.class);
+        }
+
+        return testClass.asSubclass(TestFmwk.TestGroup.class);
+    }
+
+    @Override
+    protected List<Runner> getChildren() {
+        return runners;
+    }
+
+    @Override
+    protected Description describeChild(Runner child) {
+        return child.getDescription();
+    }
+
+    @Override
+    protected void runChild(Runner child, RunNotifier notifier) {
+        child.run(notifier);
+    }
+}
diff --git a/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestParentRunner.java b/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestParentRunner.java
new file mode 100644
index 0000000..728a356
--- /dev/null
+++ b/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestParentRunner.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.junit;
+
+import org.junit.runners.ParentRunner;
+import org.junit.runners.model.InitializationError;
+
+/**
+ * Extends {@link ParentRunner} to prevent it from trying to create an instance of
+ * {@link org.junit.runners.model.TestClass} for the supplied {@code testClass} because that
+ * requires that the {@code testClass} has only a single constructor and at least one ICU test
+ * ({@code android.icu.dev.test.serializable.CoverageTest}) has more than one constructor.
+ *
+ * <p>This provides a dummy class and overrides the {@link #getName()} method to return the
+ * correct name. The consequence of this is that it is not possible to use JUnit 4 annotations
+ * related to the class, like {@link org.junit.BeforeClass}, {@link org.junit.ClassRule}, etc.
+ */
+abstract class IcuTestParentRunner<T> extends ParentRunner<T> {
+
+    private final Class<?> testClass;
+
+    IcuTestParentRunner(Class<?> testClass) throws InitializationError {
+        super(DummyTestClass.class);
+        this.testClass = testClass;
+    }
+
+    @Override
+    protected String getName() {
+        return testClass.getName();
+    }
+
+    /**
+     * A dummy test class to pass to {@link ParentRunner} for it to validate and check for
+     * annotations.
+     *
+     * <p>Must be public.
+     */
+    public static class DummyTestClass {
+
+    }
+}
diff --git a/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestRunnerBuilder.java b/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestRunnerBuilder.java
new file mode 100644
index 0000000..82c3044
--- /dev/null
+++ b/android_icu4j/runner/src/main/java/android/icu/junit/IcuTestRunnerBuilder.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.junit;
+
+import android.icu.dev.test.TestFmwk;
+import android.support.test.internal.util.AndroidRunnerParams;
+import org.junit.internal.builders.AnnotatedBuilder;
+import org.junit.runner.Runner;
+import org.junit.runners.model.RunnerBuilder;
+
+/**
+ * A {@link RunnerBuilder} used for running ICU test classes derived from {@link TestFmwk}.
+ */
+public class IcuTestRunnerBuilder extends RunnerBuilder {
+
+    private final AndroidRunnerParams runnerParams;
+
+    private final AnnotatedBuilder annotatedBuilder;
+
+    public IcuTestRunnerBuilder(AndroidRunnerParams runnerParams) {
+        this.runnerParams = runnerParams;
+        annotatedBuilder = new AnnotatedBuilder(this);
+    }
+
+    @Override
+    public Runner runnerForClass(Class<?> testClass) throws Throwable {
+        // Check for a TestGroup before a TestFmwk class as TestGroup is a subclass of TestFmwk
+        if (TestFmwk.TestGroup.class.isAssignableFrom(testClass)) {
+            return new IcuTestGroupRunner(testClass.asSubclass(TestFmwk.TestGroup.class), this);
+        }
+
+        if (TestFmwk.class.isAssignableFrom(testClass)) {
+            // Make sure that in the event of an error the resulting Runner an be filtered out.
+            return new IcuTestFmwkRunner(testClass.asSubclass(TestFmwk.class), runnerParams);
+        }
+
+        // Fallback to using the annotation builder to support the extra icu cts tests.
+        return annotatedBuilder.safeRunnerForClass(testClass);
+    }
+}
diff --git a/android_icu4j/runner/src/main/java/android/icu/junit/TestFmwkUtils.java b/android_icu4j/runner/src/main/java/android/icu/junit/TestFmwkUtils.java
new file mode 100644
index 0000000..2da24ed
--- /dev/null
+++ b/android_icu4j/runner/src/main/java/android/icu/junit/TestFmwkUtils.java
@@ -0,0 +1,165 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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 android.icu.junit;
+
+import android.icu.dev.test.TestFmwk;
+import android.icu.util.TimeZone;
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Locale;
+
+/**
+ * Abstracts away reflection code that accesses various hidden fields and methods in the ICU test
+ * framework.
+ *
+ * <p>Assuming that this is integrated into ICU test framework itself then ideally the test
+ * framework will itself be modified to remove the need for this reflection at which point this
+ * class can be removed.
+ */
+public class TestFmwkUtils {
+
+    /**
+     * The field on TestGroup which has the list of classes in it.
+     */
+    private static final Field classesToTestField = getField(TestFmwk.TestGroup.class, "names");
+
+    /**
+     * The field on TestGroup which has the default package in it.
+     */
+    private static final Field defaultPackageField =
+            getField(TestFmwk.TestGroup.class, "defaultPackage");
+
+    /**
+     * The field on TestFmwk which has the {@link android.icu.dev.test.TestFmwk.TestParams} in it.
+     */
+    private static final Field paramsField = getField(TestFmwk.class, "params");
+
+    private static final Method getTargetsMethod = getTargetsMethod();
+
+    /**
+     * The default time zone for all the tests.
+     */
+    private final static TimeZone defaultTimeZone =
+        getStaticFieldValue("defaultTimeZone", TimeZone.class);
+
+    /**
+     * The default locale used for all the tests.
+     */
+    private final static Locale defaultLocale = getStaticFieldValue("defaultLocale", Locale.class);
+
+    private static <T> T getStaticFieldValue(String fieldName, Class<T> fieldClass) {
+        Field field = getField(TestFmwk.class, fieldName);
+        try {
+            return fieldClass.cast(field.get(null));
+        } catch (IllegalAccessException e) {
+            throw new RuntimeException("Could not get field: " + fieldName, e);
+        }
+    }
+
+    private static Field getField(Class<?> theClass, String name) {
+        // Find the field, and complain if it is not where it's expected to be.
+        try {
+            Field field = theClass.getDeclaredField(name);
+            field.setAccessible(true);  // It's private by default.
+            return field;
+        } catch (NoSuchFieldException e) {
+            throw new RuntimeException("Class structure of ICU tests have changed.", e);
+        }
+    }
+
+    private static Method getTargetsMethod() {
+        try {
+            Method method = TestFmwk.class.getDeclaredMethod("getTargets", String.class);
+            method.setAccessible(true);
+            return method;
+        } catch (NoSuchMethodException e) {
+            throw new RuntimeException("Class structure of ICU tests have changed.", e);
+        }
+    }
+
+    public static TestFmwk.Target getTargets(TestFmwk testFmwk) {
+        return test_for_TestFmwk_GetTargets(testFmwk);
+    }
+
+    /**
+     * A special method to avoid the TestFmwk from throwing an InternalError when an error occurs
+     * during execution of the test but outside the actual test method, e.g. in a
+     * {@link TestFmwk#validate()} method. See http://bugs.icu-project.org/trac/ticket/12183
+     *
+     * <p>DO NOT CHANGE THE NAME
+     */
+    private static TestFmwk.Target test_for_TestFmwk_GetTargets(TestFmwk testFmwk) {
+        try {
+            // Set the default locale and time zone here as it can affect the targets returned.
+            // ICU4J relies on the fact that the Target.run() method of a TestGroup based test is
+            // called before the getTargets() method is called. Under JUnit we get the targets
+            // first.
+            Locale.setDefault(defaultLocale);
+            TimeZone.setDefault(defaultTimeZone);
+
+            return (TestFmwk.Target) getTargetsMethod.invoke(testFmwk, new Object[] {null});
+        } catch (InvocationTargetException | IllegalAccessException e) {
+            throw new IllegalStateException(
+                    "Problem calling getTargets(null) on " + testFmwk, e);
+        }
+    }
+
+    public static <T extends TestFmwk> T newTestFmwkInstance(Class<? extends T> testFmwkClass)
+            throws IllegalAccessException, InstantiationException {
+        // Create a TestFmwk and make sure that it's params field is initialized.
+        T testFmwk = testFmwkClass.newInstance();
+        TestFmwk.TestParams testParams = TestFmwk.TestParams.create(new String[0], null);
+        if (testParams == null) {
+            throw new IllegalStateException("Could not create TestParams");
+        }
+        // Set a dummy stack to avoid NPE if a test logs a known error.
+        testParams.stack = testParams.new State(null, "DUMMY", false);
+        paramsField.set(testFmwk, testParams);
+        return testFmwk;
+    }
+
+    public static List<String> getClassNames(TestFmwk.TestGroup testGroup) {
+        try {
+            String[] classNames = (String[]) classesToTestField.get(testGroup);
+            String defaultPackage = (String) defaultPackageField.get(testGroup);
+
+            List<String> list = new ArrayList<>(classNames.length);
+            for (String basicName : classNames) {
+                // Handle relative class names.
+                String fullyQualifiedName;
+                if (basicName.contains(".")) {
+                    fullyQualifiedName = basicName;
+                } else {
+                    fullyQualifiedName = defaultPackage + basicName;
+                }
+
+                list.add(fullyQualifiedName);
+            }
+
+            // Sort to ensure consistent ordering.
+            Collections.sort(list);
+
+            return list;
+        } catch (IllegalAccessException e) {
+            throw new IllegalStateException("Problem getting class names from " + testGroup, e);
+        }
+    }
+}
diff --git a/android_icu4j/runner/src/main/java/android/icu/junit/package-info.java b/android_icu4j/runner/src/main/java/android/icu/junit/package-info.java
new file mode 100644
index 0000000..9c03393
--- /dev/null
+++ b/android_icu4j/runner/src/main/java/android/icu/junit/package-info.java
@@ -0,0 +1,10 @@
+/**
+ * Contains classes used to make ICU tests runnable by JUnit.
+ *
+ * <p>Ideally, this will be integrated into ICU itself and cleaned up so that ICU tests can be
+ * simply run using standard JUnit. e.g. ICU test classes will be annotated with
+ * {@code RunWith(IcuTestGroupRunner.class)} or {@code RunWith(IcuTestFmwkRunner.class)} depending
+ * on whether they extend {@link android.icu.dev.test.TestFmwk.TestGroup} or
+ * {@link android.icu.dev.test.TestFmwk}.
+ */
+package android.icu.junit;
diff --git a/android_icu4j/src/main/java/android/icu/text/DecimalFormat.java b/android_icu4j/src/main/java/android/icu/text/DecimalFormat.java
index 9dd781f..6dc95d1 100644
--- a/android_icu4j/src/main/java/android/icu/text/DecimalFormat.java
+++ b/android_icu4j/src/main/java/android/icu/text/DecimalFormat.java
@@ -920,10 +920,7 @@
         synchronized (digitList) {
             digitList.set(number, precision, !useExponentialNotation &&
                           !areSignificantDigitsUsed());
-            // Android patch (ticket #11913) begin.
-            return subformat(number, result, fieldPosition, isNegative, false, parseAttr,
-                    getMaximumIntegerDigits());
-            // Android patch (ticket #11913) end.
+            return subformat(number, result, fieldPosition, isNegative, false, parseAttr);
         }
     }
 
@@ -1123,10 +1120,7 @@
             if (digitList.wasRounded() && roundingMode == BigDecimal.ROUND_UNNECESSARY) {
                 throw new ArithmeticException("Rounding necessary");              
             }
-            // Android patch (ticket #11913) begin.
-            return subformat(number, result, fieldPosition, isNegative, true, parseAttr,
-                    getMaximumIntegerDigits());
-            // Android patch (ticket #11913) end.
+            return subformat(number, result, fieldPosition, isNegative, true, parseAttr);
         }
     }
 
@@ -1159,21 +1153,8 @@
             if (digitList.wasRounded() && roundingMode == BigDecimal.ROUND_UNNECESSARY) {
                 throw new ArithmeticException("Rounding necessary");              
             }
-            // Android patch (ticket #11913) begin.
-            // If the maximum integer digits are still set to the maximum for double, set the
-            // maximum integer digits we will display to the length of the BigInteger, as this can
-            // acceptably be longer than 309 digits.
-            int maxIntDigits;
-            if (getMaximumIntegerDigits() == DOUBLE_INTEGER_DIGITS) {
-                maxIntDigits = digitList.decimalAt;
-                if (maxIntDigits >= 0)
-                    maxIntDigits++;
-            } else {
-                maxIntDigits = getMaximumIntegerDigits();
-            }
             return subformat(number.intValue(), result, fieldPosition, number.signum() < 0, true,
-                             parseAttr, maxIntDigits);
-            // Android patch (ticket #11913) end.
+                             parseAttr);
         }
     }
 
@@ -1204,21 +1185,8 @@
             if (digitList.wasRounded() && roundingMode == BigDecimal.ROUND_UNNECESSARY) {
                 throw new ArithmeticException("Rounding necessary");              
             }
-            // Android patch (ticket #11913) begin.
-            // If the maximum integer digits are still set to the maximum for double, set the
-            // maximum integer digits we will display to the length of the BigDecimal, as this can
-            // acceptably be longer than 309 digits.
-            int maxIntDigits;
-            if (getMaximumIntegerDigits() == DOUBLE_INTEGER_DIGITS) {
-                maxIntDigits = digitList.decimalAt;
-                if (maxIntDigits >= 0)
-                    maxIntDigits++;
-            } else {
-                maxIntDigits = getMaximumIntegerDigits();
-            }
             return subformat(number.doubleValue(), result, fieldPosition, number.signum() < 0,
-                             false, parseAttr, maxIntDigits);
-            // Android patch (ticket #11913) end.
+                             false, parseAttr);
         }
     }
 
@@ -1248,22 +1216,8 @@
             if (digitList.wasRounded() && roundingMode == BigDecimal.ROUND_UNNECESSARY) {
                 throw new ArithmeticException("Rounding necessary");              
             }
-            // Android patch (ticket #11913) begin.
-            // If the maximum integer digits are still set to the maximum for double, set the
-            // maximum integer digits we will display to the length of the BigDecimal, as this can
-            // acceptably be longer than 309 digits.
-            int maxIntDigits;
-            if (getMaximumIntegerDigits() == DOUBLE_INTEGER_DIGITS) {
-                maxIntDigits = digitList.decimalAt;
-                if (maxIntDigits >= 0)
-                    maxIntDigits++;
-            } else {
-                maxIntDigits = getMaximumIntegerDigits();
-            }
-
             return subformat(number.doubleValue(), result, fieldPosition, number.signum() < 0,
-                             false, false, maxIntDigits);
-            // Android patch (ticket #11913) end.
+                             false, false);
         }
     }
 
@@ -1302,20 +1256,17 @@
         }
     }
 
-    // Android patch (ticket #11913) begin.
     private StringBuffer subformat(int number, StringBuffer result, FieldPosition fieldPosition,
-                                   boolean isNegative, boolean isInteger, boolean parseAttr,
-                                   int maxIntDig) {
+                                   boolean isNegative, boolean isInteger, boolean parseAttr) {
         if (currencySignCount == CURRENCY_SIGN_COUNT_IN_PLURAL_FORMAT) {
             // compute the plural category from the digitList plus other settings
             return subformat(currencyPluralInfo.select(getFixedDecimal(number)),
                              result, fieldPosition, isNegative,
-                             isInteger, parseAttr, maxIntDig);
+                             isInteger, parseAttr);
         } else {
-            return subformat(result, fieldPosition, isNegative, isInteger, parseAttr, maxIntDig);
+            return subformat(result, fieldPosition, isNegative, isInteger, parseAttr);
         }
     }
-    // Android patch (ticket #11913) end.
 
     /**
      * This is ugly, but don't see a better way to do it without major restructuring of the code.
@@ -1363,24 +1314,21 @@
         return new FixedDecimal(number, v, f);
     }
 
-    // Android patch (ticket #11913) begin.
     private StringBuffer subformat(double number, StringBuffer result, FieldPosition fieldPosition,
-                                   boolean isNegative, boolean isInteger, boolean parseAttr,
-                                   int maxIntDig) {
+                                   boolean isNegative,
+            boolean isInteger, boolean parseAttr) {
         if (currencySignCount == CURRENCY_SIGN_COUNT_IN_PLURAL_FORMAT) {
             // compute the plural category from the digitList plus other settings
             return subformat(currencyPluralInfo.select(getFixedDecimal(number)),
                              result, fieldPosition, isNegative,
-                             isInteger, parseAttr, maxIntDig);
+                             isInteger, parseAttr);
         } else {
-            return subformat(result, fieldPosition, isNegative, isInteger, parseAttr, maxIntDig);
+            return subformat(result, fieldPosition, isNegative, isInteger, parseAttr);
         }
     }
-    // Android patch (ticket #11913) end.
 
-    // Android patch (ticket #11913) begin.
     private StringBuffer subformat(String pluralCount, StringBuffer result, FieldPosition fieldPosition,
-            boolean isNegative, boolean isInteger, boolean parseAttr, int maxIntDig) {
+            boolean isNegative, boolean isInteger, boolean parseAttr) {
         // There are 2 ways to activate currency plural format: by applying a pattern with
         // 3 currency sign directly, or by instantiate a decimal formatter using
         // PLURALCURRENCYSTYLE.  For both cases, the number of currency sign in the
@@ -1406,18 +1354,15 @@
         // based on pattern alone, and it is already expanded during applying pattern, or
         // setDecimalFormatSymbols, or setCurrency.
         expandAffixAdjustWidth(pluralCount);
-        return subformat(result, fieldPosition, isNegative, isInteger, parseAttr, maxIntDig);
+        return subformat(result, fieldPosition, isNegative, isInteger, parseAttr);
     }
-    // Android patch (ticket #11913) end.
 
     /**
      * Complete the formatting of a finite number. On entry, the
      * digitList must be filled in with the correct digits.
      */
-    // Android patch (ticket #11913) begin.
     private StringBuffer subformat(StringBuffer result, FieldPosition fieldPosition,
-                                   boolean isNegative, boolean isInteger, boolean parseAttr,
-                                   int maxIntDig) {
+                                   boolean isNegative, boolean isInteger, boolean parseAttr) {
         // NOTE: This isn't required anymore because DigitList takes care of this.
         //
         // // The negative of the exponent represents the number of leading // zeros
@@ -1447,18 +1392,18 @@
         if (useExponentialNotation) {
             subformatExponential(result, fieldPosition, parseAttr);
         } else {
-            subformatFixed(result, fieldPosition, isInteger, parseAttr, maxIntDig);
+            subformatFixed(result, fieldPosition, isInteger, parseAttr);
         }
 
         int suffixLen = appendAffix(result, isNegative, false, fieldPosition, parseAttr);
         addPadding(result, fieldPosition, prefixLen, suffixLen);
         return result;
     }
-    // Android patch (ticket #11913) end.
 
-    // Android patch (ticket #11913) begin.
-    private void subformatFixed(StringBuffer result, FieldPosition fieldPosition,
-                                boolean isInteger, boolean parseAttr, int maxIntDig) {
+    private void subformatFixed(StringBuffer result,
+            FieldPosition fieldPosition,
+            boolean isInteger,
+            boolean parseAttr) {
         char [] digits = symbols.getDigitsLocal();
 
         char grouping = currencySignCount == CURRENCY_SIGN_COUNT_ZERO ?
@@ -1466,7 +1411,7 @@
         char decimal = currencySignCount == CURRENCY_SIGN_COUNT_ZERO ?
                 symbols.getDecimalSeparator() : symbols.getMonetaryDecimalSeparator();
         boolean useSigDig = areSignificantDigitsUsed();
-    // Android patch (ticket #11913) end.
+        int maxIntDig = getMaximumIntegerDigits();
         int minIntDig = getMinimumIntegerDigits();
         int i;
         // [Spark/CDL] Record the integer start index.
@@ -5207,13 +5152,14 @@
 
     /**
      * Sets the maximum number of digits allowed in the integer portion of a number. This
-     * override limits the integer digit count to 309.
+     * override limits the integer digit count to 2,000,000,000 to match ICU4C.
      *
      * @see NumberFormat#setMaximumIntegerDigits
      */
     @Override
     public void setMaximumIntegerDigits(int newValue) {
-        super.setMaximumIntegerDigits(Math.min(newValue, DOUBLE_INTEGER_DIGITS));
+        // Android changed: Allow 2 billion integer digits.
+        super.setMaximumIntegerDigits(Math.min(newValue, MAX_INTEGER_DIGITS));
     }
 
     /**
@@ -5502,11 +5448,12 @@
         // InvalidObjectException("Digit count out of range"); }
 
 
-        // Truncate the maximumIntegerDigits to DOUBLE_INTEGER_DIGITS and
+        // Android changed: Allow 2 billion integer digits.
+        // Truncate the maximumIntegerDigits to MAX_INTEGER_DIGITS and
         // maximumFractionDigits to DOUBLE_FRACTION_DIGITS
 
-        if (getMaximumIntegerDigits() > DOUBLE_INTEGER_DIGITS) {
-            setMaximumIntegerDigits(DOUBLE_INTEGER_DIGITS);
+        if (getMaximumIntegerDigits() > MAX_INTEGER_DIGITS) {
+            setMaximumIntegerDigits(MAX_INTEGER_DIGITS);
         }
         if (getMaximumFractionDigits() > DOUBLE_FRACTION_DIGITS) {
             _setMaximumFractionDigits(DOUBLE_FRACTION_DIGITS);
@@ -5959,6 +5906,11 @@
      * Upper limit on integer and fraction digits for a Java double [Richard/GCL]
      */
     static final int DOUBLE_INTEGER_DIGITS = 309;
+    // Android changed: Allow 2 billion integer digits.
+    // This change is necessary to stay feature-compatible in java.text.DecimalFormat which
+    // used to be implemented using ICU4C (which has a 2 billion integer digits limit) and
+    // is now implemented based on this class.
+    static final int MAX_INTEGER_DIGITS = 2000000000;
     static final int DOUBLE_FRACTION_DIGITS = 340;
 
     /**
diff --git a/android_icu4j/src/main/java/android/icu/text/UnicodeSet.java b/android_icu4j/src/main/java/android/icu/text/UnicodeSet.java
index 8fbb40c..9d934ae 100644
--- a/android_icu4j/src/main/java/android/icu/text/UnicodeSet.java
+++ b/android_icu4j/src/main/java/android/icu/text/UnicodeSet.java
@@ -575,6 +575,7 @@
     /**
      * Return true if the given position, in the given pattern, appears
      * to be the start of a UnicodeSet pattern.
+     * @hide unsupported on Android
      */
     public static boolean resemblesPattern(String pattern, int pos) {
         return ((pos+1) < pattern.length() &&
@@ -2796,6 +2797,7 @@
     /**
      * Add the contents of the UnicodeSet (as strings) into a collection.
      * @param target collection to add into
+     * @hide unsupported on Android
      */
     public String[] addAllTo(String[] target) {
         return addAllTo(this, target);
@@ -2803,6 +2805,7 @@
 
     /**
      * Add the contents of the UnicodeSet (as strings) into an array.
+     * @hide unsupported on Android
      */
     public static String[] toArray(UnicodeSet set) {
         return addAllTo(set, new String[set.size()]);
@@ -4413,6 +4416,7 @@
      * and comparing, but much faster (no object creation). 
      * Actually, there is one difference; a null compares as less.
      * Note that this (=String) order is UTF-16 order -- *not* code point order.
+     * @hide unsupported on Android
      */
 
     public static int compare(CharSequence string, int codePoint) {
@@ -4424,6 +4428,7 @@
      * Same results as turning the code point into a string and comparing, but much faster (no object creation). 
      * Actually, there is one difference; a null compares as less.
      * Note that this (=String) order is UTF-16 order -- *not* code point order.
+     * @hide unsupported on Android
      */
     public static int compare(int codePoint, CharSequence string) {
         return -CharSequences.compare(string, codePoint);
@@ -4436,6 +4441,7 @@
      * That means that sets can't be compared directly with this method, unless they are TreeSets without
      * (or with the same) comparator. Unfortunately, it is impossible to reliably detect in Java whether subclass of
      * Collection satisfies the right criteria, so it is left to the user to avoid those circumstances.
+     * @hide unsupported on Android
      */
     public static <T extends Comparable<T>> int compare(Iterable<T> collection1, Iterable<T> collection2) {
         return compare(collection1.iterator(), collection2.iterator());
@@ -4471,6 +4477,7 @@
 
     /**
      * Utility to compare two collections, optionally by size, and then lexicographically.
+     * @hide unsupported on Android
      */
     public static <T extends Comparable<T>> int compare(Collection<T> collection1, Collection<T> collection2, ComparisonStyle style) {
         if (style != ComparisonStyle.LEXICOGRAPHIC) {
@@ -4484,6 +4491,7 @@
 
     /**
      * Utility for adding the contents of an iterable to a collection.
+     * @hide unsupported on Android
      */
     public static <T, U extends Collection<T>> U addAllTo(Iterable<T> source, U target) {
         for (T item : source) {
@@ -4494,6 +4502,7 @@
 
     /**
      * Utility for adding the contents of an iterable to a collection.
+     * @hide unsupported on Android
      */
     public static <T> T[] addAllTo(Iterable<T> source, T[] target) {
         int i = 0;
diff --git a/android_icu4j/src/main/java/android/icu/util/CECalendar.java b/android_icu4j/src/main/java/android/icu/util/CECalendar.java
index 019d042..fa292fc 100644
--- a/android_icu4j/src/main/java/android/icu/util/CECalendar.java
+++ b/android_icu4j/src/main/java/android/icu/util/CECalendar.java
@@ -168,6 +168,7 @@
      * The Coptic and Ethiopic calendars differ only in their epochs.
      * This method must be implemented by CECalendar subclasses to
      * return the date offset from Julian.
+     * @hide unsupported on Android
      */
     abstract protected int getJDEpochOffset();
 
@@ -228,6 +229,7 @@
      * @param month the month
      * @param day the day
      * @return Julian day
+     * @hide unsupported on Android
      */
     public static int ceToJD(long year, int month, int day, int jdEpochOffset) {
 
@@ -255,6 +257,7 @@
 
     /**
      * Convert a Julian day to an Coptic/Ethiopic year, month and day
+     * @hide unsupported on Android
      */
     public static void jdToCE(int julianDay, int jdEpochOffset, int[] fields) {
         int c4; // number of 4 year cycle (1461 days)
diff --git a/android_icu4j/src/main/java/android/icu/util/IslamicCalendar.java b/android_icu4j/src/main/java/android/icu/util/IslamicCalendar.java
index df8ee6e..7088f8f 100644
--- a/android_icu4j/src/main/java/android/icu/util/IslamicCalendar.java
+++ b/android_icu4j/src/main/java/android/icu/util/IslamicCalendar.java
@@ -297,6 +297,7 @@
      *
      * @param beCivil   <code>true</code> to use the civil calendar,
      *                  <code>false</code> to use the astronomical calendar.
+     * @hide unsupported on Android
      */
     public void setCivil(boolean beCivil)
     {
@@ -323,6 +324,7 @@
      * Returns <code>true</code> if this object is using the fixed-cycle civil
      * calendar, or <code>false</code> if using the religious, astronomical
      * calendar.
+     * @hide unsupported on Android
      * 
      */
     public boolean isCivil() {
@@ -909,8 +911,6 @@
     
     /**
      * sets the calculation type for this calendar.
-     * 
-     * @hide draft / provisional / internal are hidden on Android
      */
     public void setCalculationType(CalculationType type) {
         cType = type;
@@ -924,8 +924,6 @@
 
     /**
      * gets the calculation type for this calendar.
-     * 
-     * @hide draft / provisional / internal are hidden on Android
      */
     public CalculationType getCalculationType() {
         return cType;
diff --git a/android_icu4j/src/main/java/android/icu/util/VersionInfo.java b/android_icu4j/src/main/java/android/icu/util/VersionInfo.java
index 7ba8669..baad64e 100644
--- a/android_icu4j/src/main/java/android/icu/util/VersionInfo.java
+++ b/android_icu4j/src/main/java/android/icu/util/VersionInfo.java
@@ -530,6 +530,7 @@
     /**
      * Main method prints out ICU version information
      * @param args arguments (currently not used)
+     * @hide unsupported on Android
      */
     public static void main(String[] args) {
         String icuApiVer;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/TestAll.java
index ce131fc..3fde4dc 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/TestAllCollate.java b/android_icu4j/src/main/tests/android/icu/dev/test/TestAllCollate.java
index 424bf7b..654efa2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/TestAllCollate.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/TestAllCollate.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAllCollate extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/TestAllCore.java b/android_icu4j/src/main/tests/android/icu/dev/test/TestAllCore.java
index e750445..5f5ee07 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/TestAllCore.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/TestAllCore.java
@@ -8,7 +8,10 @@
 package android.icu.dev.test;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
+@RunWith(IcuTestGroupRunner.class)
 public class TestAllCore extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/TestAllTranslit.java b/android_icu4j/src/main/tests/android/icu/dev/test/TestAllTranslit.java
index 42ddb52..c25aa79 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/TestAllTranslit.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/TestAllTranslit.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAllTranslit extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/TestLocaleNamePackaging.java b/android_icu4j/src/main/tests/android/icu/dev/test/TestLocaleNamePackaging.java
index 640c155..6c46201 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/TestLocaleNamePackaging.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/TestLocaleNamePackaging.java
@@ -16,7 +16,10 @@
 import android.icu.text.LocaleDisplayNames;
 import android.icu.text.LocaleDisplayNames.DialectHandling;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestLocaleNamePackaging extends TestFmwk {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/TestPackaging.java b/android_icu4j/src/main/tests/android/icu/dev/test/TestPackaging.java
index 738dd48..7196e30 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/TestPackaging.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/TestPackaging.java
@@ -8,7 +8,10 @@
 package android.icu.dev.test;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
+@RunWith(IcuTestGroupRunner.class)
 public class TestPackaging extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/BiDiConformanceTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/BiDiConformanceTest.java
index 159630e..034d17f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/BiDiConformanceTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/BiDiConformanceTest.java
@@ -15,12 +15,15 @@
 import android.icu.lang.UCharacterDirection;
 import android.icu.text.Bidi;
 import android.icu.text.BidiClassifier;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author Markus W. Scherer
  * BiDi conformance test, using the Unicode BidiTest.txt and BidiCharacterTest.txt files.
  * Ported from ICU4C intltest/bidiconf.cpp .
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class BiDiConformanceTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new BiDiConformanceTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/BidiTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/BidiTest.java
index 0085788..5b8620a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/BidiTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/BidiTest.java
@@ -16,6 +16,8 @@
 import android.icu.text.Bidi;
 import android.icu.text.BidiRun;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * A base class for the Bidi test suite.
@@ -23,6 +25,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class BidiTest extends TestFmwk {
 
     protected static final char[] charFromDirProp = {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestAll.java
index b5189db..ea939a0 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestAll.java
@@ -9,10 +9,13 @@
 package android.icu.dev.test.bidi;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestBidi.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestBidi.java
index fa6bcc7..eaf0fd6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestBidi.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestBidi.java
@@ -12,6 +12,8 @@
 
 import android.icu.text.Bidi;
 import android.icu.text.BidiRun;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for Bidi class override.
@@ -19,6 +21,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestBidi extends BidiTest {
 
     private static final int MAXLEN = 256;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestCharFromDirProp.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestCharFromDirProp.java
index 403bf11..bb525e4 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestCharFromDirProp.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestCharFromDirProp.java
@@ -11,6 +11,8 @@
 import android.icu.impl.Utility;
 import android.icu.lang.UCharacter;
 import android.icu.lang.UCharacterDirection;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for Bidi charFromDirProp
@@ -18,6 +20,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestCharFromDirProp extends BidiTest {
 
     /* verify that the exemplar characters have the expected bidi classes */
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestClassOverride.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestClassOverride.java
index a96c4e4..fb59781 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestClassOverride.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestClassOverride.java
@@ -10,6 +10,8 @@
 
 import android.icu.text.Bidi;
 import android.icu.text.BidiClassifier;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for Bidi class override.
@@ -17,6 +19,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestClassOverride extends BidiTest {
 
     private static final int DEF = TestData.DEF;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestCompatibility.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestCompatibility.java
index 685b40b..6478d47 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestCompatibility.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestCompatibility.java
@@ -14,6 +14,8 @@
 import java.text.AttributedString;
 
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for java.text.Bidi compatibility
@@ -21,6 +23,7 @@
  * @author Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestCompatibility extends BidiTest {
 
     void compareBidi(Bidi bidi, java.text.Bidi jbidi)
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestContext.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestContext.java
index 492e7f8..f8dab83 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestContext.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestContext.java
@@ -9,6 +9,8 @@
 package android.icu.dev.test.bidi;
 
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for doing transformations in context
@@ -16,6 +18,7 @@
  * @author Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestContext extends BidiTest {
 
     private class ContextCase {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestFailureRecovery.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestFailureRecovery.java
index 745247b..c5a1524 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestFailureRecovery.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestFailureRecovery.java
@@ -9,6 +9,8 @@
 package android.icu.dev.test.bidi;
 
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for Bidi failure recovery
@@ -16,6 +18,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestFailureRecovery extends BidiTest {
 
     public void testFailureRecovery()
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestInverse.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestInverse.java
index e95baaf..0cdefe9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestInverse.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestInverse.java
@@ -12,6 +12,8 @@
 
 import android.icu.impl.Utility;
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for the basic "inverse" Bidi mode.
@@ -19,6 +21,7 @@
  * ported from C by Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestInverse extends BidiTest {
 
     private int countRoundtrips = 0;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestMultipleParagraphs.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestMultipleParagraphs.java
index 702804d..24742d2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestMultipleParagraphs.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestMultipleParagraphs.java
@@ -13,6 +13,8 @@
 import android.icu.impl.Utility;
 import android.icu.text.Bidi;
 import android.icu.text.BidiRun;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for Bidi multiple paragraphs
@@ -20,6 +22,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestMultipleParagraphs extends BidiTest {
 
     private static final String text =
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorder.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorder.java
index d69e3d2..dc819aa 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorder.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorder.java
@@ -9,6 +9,8 @@
 package android.icu.dev.test.bidi;
 
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
@@ -17,6 +19,7 @@
  * ported from C by Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestReorder extends BidiTest {
 
     private static final String[] logicalOrder = {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderArabicMathSymbols.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderArabicMathSymbols.java
index 1237674..df79768 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderArabicMathSymbols.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderArabicMathSymbols.java
@@ -8,6 +8,8 @@
 package android.icu.dev.test.bidi;
 
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
@@ -16,6 +18,7 @@
  * Ported from C by Ramy Said
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestReorderArabicMathSymbols extends BidiTest {
 
     private static final String[] logicalOrder = {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderRunsOnly.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderRunsOnly.java
index 0e60f1c..08f58a5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderRunsOnly.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderRunsOnly.java
@@ -9,6 +9,8 @@
 package android.icu.dev.test.bidi;
 
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for variants to the UBA.
@@ -16,6 +18,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestReorderRunsOnly extends BidiTest {
 
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderingMode.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderingMode.java
index e3a1f42..e1a7b92 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderingMode.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestReorderingMode.java
@@ -11,6 +11,8 @@
 import java.util.Arrays;
 
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for variants to the UBA.
@@ -18,6 +20,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestReorderingMode extends BidiTest {
 
     static final String[] textIn = {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestStreaming.java b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestStreaming.java
index a5ed8af..e261d3c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestStreaming.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bidi/TestStreaming.java
@@ -10,6 +10,8 @@
 
 import android.icu.impl.Utility;
 import android.icu.text.Bidi;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for streaming mode
@@ -17,6 +19,7 @@
  * @author Lina Kemmel, Matitiahu Allouche
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestStreaming extends BidiTest {
 
     static final int MAXPORTIONS = 10;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/bigdec/DiagBigDecimal.java b/android_icu4j/src/main/tests/android/icu/dev/test/bigdec/DiagBigDecimal.java
index d8692e7..dfe355c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/bigdec/DiagBigDecimal.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/bigdec/DiagBigDecimal.java
@@ -16,6 +16,8 @@
 import android.icu.dev.test.TestUtil;
 import android.icu.dev.test.TestUtil.JavaVendor;
 import android.icu.math.BigDecimal;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /* ------------------------------------------------------------------ */
 /* Decimal diagnostic tests mfc */
@@ -99,6 +101,7 @@
  * @author Mike Cowlishaw
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DiagBigDecimal extends TestFmwk {
     //private static final java.lang.String $0 = "DiagBigDecimal.nrx";
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/AstroTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/AstroTest.java
index 0d1bd1c..ec1a76b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/AstroTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/AstroTest.java
@@ -21,9 +21,12 @@
 import android.icu.util.GregorianCalendar;
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 // TODO: try finding next new moon after  07/28/1984 16:00 GMT
 
+@RunWith(IcuTestFmwkRunner.class)
 public class AstroTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new AstroTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CalendarRegression.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CalendarRegression.java
index 7d0be52..59547cd 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CalendarRegression.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CalendarRegression.java
@@ -27,6 +27,8 @@
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test 1.32 99/11/14
@@ -36,6 +38,7 @@
  * 4145158 4145983 4147269 4149677 4162587 4165343 4166109 4167060 4173516
  * 4174361 4177484 4197699 4209071 4288792
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class CalendarRegression extends android.icu.dev.test.TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CalendarTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CalendarTest.java
index 04d7aac..fe8dca5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CalendarTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CalendarTest.java
@@ -20,11 +20,14 @@
 import android.icu.util.ChineseCalendar;
 import android.icu.util.GregorianCalendar;
 import android.icu.util.SimpleTimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * A base class for classes that test individual Calendar subclasses.
  * Defines various useful utility methods and constants
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class CalendarTest extends TestFmwk {
     
     // Constants for use by subclasses, solely to save typing
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/ChineseTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/ChineseTest.java
index 12c40b0..702e724 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/ChineseTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/ChineseTest.java
@@ -17,6 +17,8 @@
 import android.icu.util.GregorianCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test of ChineseCalendar.
@@ -60,6 +62,7 @@
  * Tue May 22 2096 = 4733-04*-01, Year 53, Cycle 79
  * Sun Mar 22 2099 = 4736-02*-01, Year 56, Cycle 79
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class ChineseTest extends CalendarTest {
 
     public static void main(String args[]) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CompatibilityTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CompatibilityTest.java
index a0f9737..bef1611 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CompatibilityTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CompatibilityTest.java
@@ -21,7 +21,10 @@
 import android.icu.util.GregorianCalendar;
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CompatibilityTest extends android.icu.dev.test.TestFmwk {
 
     public static void main(String argv[]) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CopticTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CopticTest.java
index 47b11d2..5d8f694 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CopticTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/CopticTest.java
@@ -19,10 +19,13 @@
 import android.icu.util.GregorianCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Tests for the <code>CopticCalendar</code> class.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class CopticTest extends CalendarTest 
 {
     public static void main(String args[]) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/DangiTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/DangiTest.java
index baf99e5..0740c50 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/DangiTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/DangiTest.java
@@ -14,7 +14,10 @@
 import android.icu.util.GregorianCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DangiTest extends CalendarTest {
 
     public static void main(String args[]) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/DataDrivenCalendarTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/DataDrivenCalendarTest.java
index 3245d2a..15d81fa 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/DataDrivenCalendarTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/DataDrivenCalendarTest.java
@@ -19,6 +19,8 @@
 import android.icu.util.Calendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author srl
@@ -26,6 +28,7 @@
  * analog of dadrcal.cpp
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class DataDrivenCalendarTest extends ModuleTest {
 
     public DataDrivenCalendarTest() {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/EthiopicTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/EthiopicTest.java
index 67bee08..62537aa 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/EthiopicTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/EthiopicTest.java
@@ -18,10 +18,13 @@
 import android.icu.util.GregorianCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Tests for the <code>EthiopicCalendar</code> class.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class EthiopicTest extends CalendarTest 
 {
     public static void main(String args[]) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/HebrewTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/HebrewTest.java
index 97b1642..b1678c7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/HebrewTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/HebrewTest.java
@@ -17,10 +17,13 @@
 import android.icu.util.HebrewCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Tests for the <code>HebrewCalendar</code> class.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class HebrewTest extends CalendarTest {
     public static void main(String args[]) throws Exception {
         new HebrewTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/HolidayTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/HolidayTest.java
index 521c2d0..66c0fa2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/HolidayTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/HolidayTest.java
@@ -21,10 +21,13 @@
 import android.icu.util.SimpleHoliday;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Tests for the <code>Holiday</code> class.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class HolidayTest extends TestFmwk {
     public static void main(String args[]) throws Exception {
         new HolidayTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IBMCalendarTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IBMCalendarTest.java
index 99be95f..fb1ea2f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IBMCalendarTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IBMCalendarTest.java
@@ -26,10 +26,13 @@
 import android.icu.util.TimeZone;
 import android.icu.util.TimeZone.SystemTimeZoneType;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @summary Tests of new functionality in IBMCalendar
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class IBMCalendarTest extends CalendarTest {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IndianTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IndianTest.java
index 2aae7a5..f294e3b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IndianTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IndianTest.java
@@ -18,10 +18,13 @@
 import android.icu.util.IndianCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Tests for the <code>IndianCalendar</code> class.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class IndianTest extends CalendarTest 
 {
     public static void main(String args[]) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IslamicTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IslamicTest.java
index 9a40878..78ae4aa 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IslamicTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/IslamicTest.java
@@ -24,10 +24,13 @@
 import android.icu.util.IslamicCalendar.CalculationType;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Tests for the <code>IslamicCalendar</code> class.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class IslamicTest extends CalendarTest {
     public static void main(String args[]) throws Exception {
         new IslamicTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/JapaneseTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/JapaneseTest.java
index 7eb3f6b..ea5d27c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/JapaneseTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/JapaneseTest.java
@@ -19,10 +19,13 @@
 import android.icu.util.JapaneseCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Tests for the <code>JapaneseCalendar</code> class.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class JapaneseTest extends CalendarTest {
     public static void main(String args[]) throws Exception {
         new JapaneseTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/PersianTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/PersianTest.java
index 2f0b680..2ead1ec 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/PersianTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/PersianTest.java
@@ -10,7 +10,10 @@
 
 import android.icu.util.Calendar;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class PersianTest extends CalendarTest {
 
     public static void main(String args[]) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/TestAll.java
index 517779a..3e2eb7c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/calendar/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/calendar/TestAll.java
@@ -7,10 +7,13 @@
  */
 package android.icu.dev.test.calendar;
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other calendar tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/charsetdet/TestCharsetDetector.java b/android_icu4j/src/main/tests/android/icu/dev/test/charsetdet/TestCharsetDetector.java
index 4993315..c8f1d90 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/charsetdet/TestCharsetDetector.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/charsetdet/TestCharsetDetector.java
@@ -31,11 +31,14 @@
 import android.icu.impl.Utility;
 import android.icu.text.CharsetDetector;
 import android.icu.text.CharsetMatch;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
  * @author andy
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TestCharsetDetector extends TestFmwk
 {
     
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/cldr/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/cldr/TestAll.java
index e3baf09..5a7c3b0 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/cldr/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/cldr/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.cldr;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all collation and search tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/cldr/TestCLDRVsICU.java b/android_icu4j/src/main/tests/android/icu/dev/test/cldr/TestCLDRVsICU.java
index 6e1f573..d378104 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/cldr/TestCLDRVsICU.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/cldr/TestCLDRVsICU.java
@@ -43,6 +43,8 @@
 import android.icu.util.Currency;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * This is a test file that takes in the CLDR XML test files and test against
@@ -70,6 +72,7 @@
  * @author medavis
  * @author John Huan Vu (johnvu@us.ibm.com)
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TestCLDRVsICU extends TestFmwk {
     static final boolean DEBUG = false;
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/AlphabeticIndexTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/AlphabeticIndexTest.java
index fd9c42d..876425d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/AlphabeticIndexTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/AlphabeticIndexTest.java
@@ -36,10 +36,13 @@
 import android.icu.text.UTF16;
 import android.icu.text.UnicodeSet;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author Mark Davis
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class AlphabeticIndexTest extends TestFmwk {
     /**
      * 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationAPITest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationAPITest.java
index 464c4bf..f7d1e97 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationAPITest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationAPITest.java
@@ -34,7 +34,10 @@
 import android.icu.text.UnicodeSet;
 import android.icu.util.ULocale;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationAPITest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new CollationAPITest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationChineseTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationChineseTest.java
index 310f497..1629f62 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationChineseTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationChineseTest.java
@@ -18,7 +18,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationChineseTest extends TestFmwk{
     public static void main(String[] args) throws Exception{
         new CollationChineseTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationCreationMethodTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationCreationMethodTest.java
index 2e09ebd..b70e07b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationCreationMethodTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationCreationMethodTest.java
@@ -15,6 +15,8 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
@@ -25,6 +27,7 @@
  * @author Brian Rower - IBM - August 2008
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationCreationMethodTest extends TestFmwk 
 {
     
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationCurrencyTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationCurrencyTest.java
index e321b3a..99e05fb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationCurrencyTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationCurrencyTest.java
@@ -19,7 +19,10 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationCurrencyTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new CollationCurrencyTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationDummyTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationDummyTest.java
index b02b629..ede34ae 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationDummyTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationDummyTest.java
@@ -22,7 +22,10 @@
 import android.icu.text.Collator;
 import android.icu.text.Normalizer;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationDummyTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new CollationDummyTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationEnglishTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationEnglishTest.java
index be28eb3..4911c6a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationEnglishTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationEnglishTest.java
@@ -18,7 +18,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationEnglishTest extends TestFmwk{
     public static void main(String[] args) throws Exception{
         new CollationEnglishTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFinnishTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFinnishTest.java
index 4811575..e6265cb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFinnishTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFinnishTest.java
@@ -17,7 +17,10 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationFinnishTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new CollationFinnishTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFrenchTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFrenchTest.java
index adee72e..c63c8ea 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFrenchTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFrenchTest.java
@@ -19,7 +19,10 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationFrenchTest extends TestFmwk{
     public static void main(String[] args) throws Exception {
         new CollationFrenchTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFrozenMonkeyTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFrozenMonkeyTest.java
index 41a657d..682510b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFrozenMonkeyTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationFrozenMonkeyTest.java
@@ -20,6 +20,8 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * CollationFrozenMonkeyTest is a third level test class.  This tests the random 
@@ -28,6 +30,7 @@
  * less than the string itself appended with any character.
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationFrozenMonkeyTest extends TestFmwk {
     
     private String source = "-abcdefghijklmnopqrstuvwxyz#&^$@";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationGermanTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationGermanTest.java
index 12aff3d..809c2d2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationGermanTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationGermanTest.java
@@ -18,8 +18,11 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
- public class CollationGermanTest extends TestFmwk{
+ @RunWith(IcuTestFmwkRunner.class)
+public class CollationGermanTest extends TestFmwk{
     public static void main(String[] args) throws Exception{
         new CollationGermanTest().run(args);
     }
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationIteratorTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationIteratorTest.java
index b11dad7..4d8eae7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationIteratorTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationIteratorTest.java
@@ -25,7 +25,10 @@
 import android.icu.text.RuleBasedCollator;
 import android.icu.text.UCharacterIterator;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationIteratorTest extends TestFmwk {
     
     String test1 = "What subset of all possible test cases?";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationKanaTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationKanaTest.java
index cef42f6..ad10c79 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationKanaTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationKanaTest.java
@@ -20,7 +20,10 @@
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationKanaTest extends TestFmwk{
     public static void main(String[] args) throws Exception{
         new CollationKanaTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationMiscTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationMiscTest.java
index 29a5c37..afb9e7c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationMiscTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationMiscTest.java
@@ -35,7 +35,10 @@
 import android.icu.text.UnicodeSetIterator;
 import android.icu.util.ULocale;
 import android.icu.util.UResourceBundle;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationMiscTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationMonkeyTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationMonkeyTest.java
index 83d7ad1..50fa983 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationMonkeyTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationMonkeyTest.java
@@ -20,6 +20,8 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * CollationMonkeyTest is a third level test class.  This tests the random 
@@ -28,6 +30,7 @@
  * less than the string itself appended with any character.
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationMonkeyTest extends TestFmwk {
     
     private String source = "-abcdefghijklmnopqrstuvwxyz#&^$@";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationRegressionTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationRegressionTest.java
index 4ca9b07..50fb204 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationRegressionTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationRegressionTest.java
@@ -23,7 +23,10 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationRegressionTest extends TestFmwk {
     public static void main(String[] args) throws Exception{
         new CollationRegressionTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationServiceTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationServiceTest.java
index fd17ac6..7259a53 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationServiceTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationServiceTest.java
@@ -22,7 +22,10 @@
 import android.icu.text.Collator;
 import android.icu.text.Collator.CollatorFactory;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationServiceTest extends TestFmwk {
     public static void main(String[] args) {
         new CollationServiceTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationSpanishTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationSpanishTest.java
index 27037ed..56f297b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationSpanishTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationSpanishTest.java
@@ -18,8 +18,11 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
- public class CollationSpanishTest extends TestFmwk {
+ @RunWith(IcuTestFmwkRunner.class)
+public class CollationSpanishTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new CollationSpanishTest().run(args);
     }
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationTest.java
index 1e658f7..6b91be6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationTest.java
@@ -46,7 +46,10 @@
 import android.icu.util.IllformedLocaleException;
 import android.icu.util.Output;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationTest extends TestFmwk {
     public static void main(String[] args) throws Exception{
         new CollationTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationThaiTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationThaiTest.java
index d665a02..120f9a1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationThaiTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationThaiTest.java
@@ -25,7 +25,10 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationThaiTest extends TestFmwk {
     
     final int MAX_FAILURES_TO_SHOW = -1;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationThreadTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationThreadTest.java
index 6198abc..23c7f63 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationThreadTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationThreadTest.java
@@ -14,7 +14,10 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.Collator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationThreadTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new CollationThreadTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationTurkishTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationTurkishTest.java
index 170c113..50305bd 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationTurkishTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/CollationTurkishTest.java
@@ -18,7 +18,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class CollationTurkishTest extends TestFmwk{
     public static void main(String[] args) throws Exception{
         new CollationTurkishTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/G7CollationTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/G7CollationTest.java
index d1f9850..adb5277 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/G7CollationTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/G7CollationTest.java
@@ -19,7 +19,10 @@
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
 import android.icu.text.RuleBasedCollator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class G7CollationTest extends TestFmwk{
     public static void main(String[] args) throws Exception{
         new G7CollationTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/LotusCollationKoreanTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/LotusCollationKoreanTest.java
index 3c5c5a6..da814bb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/LotusCollationKoreanTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/LotusCollationKoreanTest.java
@@ -18,7 +18,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.CollationKey;
 import android.icu.text.Collator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
  
+@RunWith(IcuTestFmwkRunner.class)
 public class LotusCollationKoreanTest extends TestFmwk{
     public static void main(String[] args) throws Exception{
         new LotusCollationKoreanTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/TestAll.java
index 1a2a9bd..a74579f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.collator;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all collation and search tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/collator/UCAConformanceTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/collator/UCAConformanceTest.java
index a76fa35..55e9ce3 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/collator/UCAConformanceTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/collator/UCAConformanceTest.java
@@ -24,7 +24,10 @@
 import android.icu.text.UTF16;
 import android.icu.util.ULocale;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class UCAConformanceTest extends TestFmwk {
 
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/compression/DecompressionTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/compression/DecompressionTest.java
index f76ed53..63ead23 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/compression/DecompressionTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/compression/DecompressionTest.java
@@ -9,7 +9,10 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.UnicodeDecompressor;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DecompressionTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new DecompressionTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/compression/ExhaustiveTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/compression/ExhaustiveTest.java
index 7e0f243..fbae351 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/compression/ExhaustiveTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/compression/ExhaustiveTest.java
@@ -10,7 +10,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.UnicodeCompressor;
 import android.icu.text.UnicodeDecompressor;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ExhaustiveTest extends TestFmwk {
     public static void main(String args[]) throws Exception {
         new ExhaustiveTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/compression/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/compression/TestAll.java
index ff9435b..a80470d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/compression/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/compression/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.compression;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) throws Exception {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/DataReadWriteTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/DataReadWriteTest.java
index 471a828..bb0aacb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/DataReadWriteTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/DataReadWriteTest.java
@@ -16,7 +16,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.impl.duration.impl.XMLRecordReader;
 import android.icu.impl.duration.impl.XMLRecordWriter;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DataReadWriteTest extends TestFmwk {
 
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/ICUDurationTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/ICUDurationTest.java
index a054746..0401026 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/ICUDurationTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/ICUDurationTest.java
@@ -22,11 +22,14 @@
 import android.icu.text.DurationFormat;
 import android.icu.util.Calendar;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author srl
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class ICUDurationTest extends TestFmwk {
     /**
      * Allows us to not depend on javax.xml.datatype.DatatypeFactory.
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/LanguageTestRoot.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/LanguageTestRoot.java
index ab0ec14..6d74ee3 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/LanguageTestRoot.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/LanguageTestRoot.java
@@ -30,10 +30,13 @@
 import android.icu.impl.duration.TimeUnitConstants;
 import android.icu.impl.duration.impl.DataRecord.ECountVariant;
 import android.icu.impl.duration.impl.DataRecord.EUnitVariant;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for en
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class LanguageTestRoot extends TestFmwk implements TimeUnitConstants {
 
     private static final TimeUnit[] units = {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodBuilderFactoryTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodBuilderFactoryTest.java
index ea9c476..4bd44b6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodBuilderFactoryTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodBuilderFactoryTest.java
@@ -17,7 +17,10 @@
 import android.icu.impl.duration.PeriodBuilderFactory;
 import android.icu.impl.duration.TimeUnit;
 import android.icu.impl.duration.TimeUnitConstants;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class PeriodBuilderFactoryTest extends TestFmwk implements TimeUnitConstants {
     private PeriodBuilderFactory pbf;
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodBuilderTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodBuilderTest.java
index dd6440c..d32755c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodBuilderTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodBuilderTest.java
@@ -11,7 +11,10 @@
 package android.icu.dev.test.duration;
 
 import android.icu.dev.test.TestFmwk;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class PeriodBuilderTest extends TestFmwk {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodTest.java
index 3d50365..275d30d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/PeriodTest.java
@@ -13,7 +13,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.impl.duration.Period;
 import android.icu.impl.duration.TimeUnit;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class PeriodTest extends TestFmwk {
 
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/RegressionTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/RegressionTest.java
index e6c88ad..c4af3a6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/RegressionTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/RegressionTest.java
@@ -14,7 +14,10 @@
 import android.icu.impl.duration.PeriodFormatterService;
 import android.icu.text.DurationFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class RegressionTest extends TestFmwk {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/ResourceBasedPeriodFormatterDataServiceTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/ResourceBasedPeriodFormatterDataServiceTest.java
index def299a..08b87a5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/ResourceBasedPeriodFormatterDataServiceTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/ResourceBasedPeriodFormatterDataServiceTest.java
@@ -16,7 +16,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.impl.duration.impl.PeriodFormatterData;
 import android.icu.impl.duration.impl.ResourceBasedPeriodFormatterDataService;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ResourceBasedPeriodFormatterDataServiceTest extends TestFmwk {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/TestAll.java
index a4d90d7..77a4ed1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/TestAll.java
@@ -11,10 +11,13 @@
 package android.icu.dev.test.duration;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/TestAll.java
index dd0b727..8fd0a97 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/TestAll.java
@@ -11,10 +11,13 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ar_EG.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ar_EG.java
index c50d766..431a363 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ar_EG.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ar_EG.java
@@ -11,11 +11,14 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
  * Test cases for ar_EG
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_ar_EG extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_en.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_en.java
index a64c7dd..ae9d02e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_en.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_en.java
@@ -11,10 +11,13 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for en
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_en extends LanguageTestRoot {
 
   public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_es.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_es.java
index 01b59a1..40cd937 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_es.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_es.java
@@ -11,10 +11,13 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for es
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_es extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_fr.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_fr.java
index c6d9634..babec36 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_fr.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_fr.java
@@ -11,10 +11,13 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for fr
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_fr extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_he_IL.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_he_IL.java
index 53ac157..695f13f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_he_IL.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_he_IL.java
@@ -11,11 +11,14 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
  * Test cases for he_IL
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_he_IL extends LanguageTestRoot {
   /**
    * Invoke the tests.
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_hi.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_hi.java
index 708200d..dec5593 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_hi.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_hi.java
@@ -12,10 +12,13 @@
 
 import android.icu.dev.test.duration.LanguageTestRoot;
 import android.icu.impl.duration.TimeUnitConstants;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for hi
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_hi extends LanguageTestRoot implements TimeUnitConstants {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_it.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_it.java
index d52f2a9..ea1dada 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_it.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_it.java
@@ -11,10 +11,13 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for it
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_it extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ja.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ja.java
index a4d5ac9..0e44f57 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ja.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ja.java
@@ -15,10 +15,13 @@
 import android.icu.impl.duration.Period;
 import android.icu.impl.duration.PeriodFormatter;
 import android.icu.impl.duration.TimeUnitConstants;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for en
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_ja extends LanguageTestRoot implements TimeUnitConstants {
   private BasicPeriodFormatterFactory pff;
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ko.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ko.java
index 659d446..5888b17 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ko.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ko.java
@@ -11,10 +11,13 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for ko
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_ko extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ru.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ru.java
index eb28b84..919e42e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ru.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_ru.java
@@ -11,11 +11,14 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
  * Test cases for ru
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_ru extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hans.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hans.java
index cc4f1c4..c910169 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hans.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hans.java
@@ -11,11 +11,14 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
  * Test cases for zh_Hans
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_zh_Hans extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hans_SG.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hans_SG.java
index a26b53b..aeb83c5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hans_SG.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hans_SG.java
@@ -11,10 +11,13 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for zh_Hans_SG
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_zh_Hans_SG extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hant.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hant.java
index dd86273..08b6633 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hant.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hant.java
@@ -11,11 +11,14 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
  * Test cases for zh_Hant
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_zh_Hant extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hant_HK.java b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hant_HK.java
index bc61851..8e80f28 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hant_HK.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/duration/languages/Test_zh_Hant_HK.java
@@ -11,11 +11,14 @@
 package android.icu.dev.test.duration.languages;
 
 import android.icu.dev.test.duration.LanguageTestRoot;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
  * Test cases for zh_Hant_HK
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class Test_zh_Hant_HK extends LanguageTestRoot {
 
   /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/BigNumberFormatTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/BigNumberFormatTest.java
index 59ab653..b0a00c1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/BigNumberFormatTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/BigNumberFormatTest.java
@@ -15,11 +15,14 @@
 import android.icu.text.DecimalFormat;
 import android.icu.text.DecimalFormatSymbols;
 import android.icu.text.NumberFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * General test of Big NumberFormat
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class BigNumberFormatTest extends TestFmwk {
 
     static final int ILLEGAL = -1;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/CompactDecimalFormatTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/CompactDecimalFormatTest.java
index 6dfd677..dc89986 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/CompactDecimalFormatTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/CompactDecimalFormatTest.java
@@ -22,7 +22,10 @@
 import android.icu.text.NumberFormat;
 import android.icu.text.PluralRules;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CompactDecimalFormatTest extends TestFmwk {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DataDrivenFormatTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DataDrivenFormatTest.java
index b1ac78c..75cf9ed 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DataDrivenFormatTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DataDrivenFormatTest.java
@@ -22,11 +22,14 @@
 import android.icu.util.Calendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author srl
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class DataDrivenFormatTest extends ModuleTest {
 
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DataDrivenNumberFormatTestSuite.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DataDrivenNumberFormatTestSuite.java
index 502b92b..b1c6c95 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DataDrivenNumberFormatTestSuite.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DataDrivenNumberFormatTestSuite.java
@@ -15,10 +15,13 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.dev.test.TestUtil;
 import android.icu.impl.Utility;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * A collection of methods to run the data driven number format test suite.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class DataDrivenNumberFormatTestSuite extends TestFmwk {
     
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatMiscTests.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatMiscTests.java
index 563fd9d..c44eddc 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatMiscTests.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatMiscTests.java
@@ -20,10 +20,13 @@
 
 import android.icu.text.DateFormatSymbols;
 import android.icu.text.SimpleDateFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /** 
  * Performs miscellaneous tests for DateFormat, SimpleDateFormat, DateFormatSymbols
  **/
+@RunWith(IcuTestFmwkRunner.class)
 public class DateFormatMiscTests extends android.icu.dev.test.TestFmwk {
 
     public static void main(String[] args) throws Exception{
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRegressionTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRegressionTest.java
index af602d8..a1e88fa 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRegressionTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRegressionTest.java
@@ -35,10 +35,13 @@
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /** 
  * Performs regression test for DateFormat
  **/
+@RunWith(IcuTestFmwkRunner.class)
 public class DateFormatRegressionTest extends android.icu.dev.test.TestFmwk {
 
     public static void main(String[] args) throws Exception{
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRegressionTestJ.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRegressionTestJ.java
index 3b6e5d8..cad84a0 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRegressionTestJ.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRegressionTestJ.java
@@ -22,7 +22,10 @@
 import android.icu.text.SimpleDateFormat;
 import android.icu.util.Calendar;
 import android.icu.util.TimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DateFormatRegressionTestJ extends android.icu.dev.test.TestFmwk {
     
     private static final String TIME_STRING = "2000/11/17 08:01:00";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRoundTripTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRoundTripTest.java
index e4f491a..709805f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRoundTripTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatRoundTripTest.java
@@ -24,10 +24,13 @@
 import android.icu.util.Calendar;
 import android.icu.util.GregorianCalendar;
 import android.icu.util.TimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /** 
  * Performs round-trip tests for DateFormat
  **/
+@RunWith(IcuTestFmwkRunner.class)
 public class DateFormatRoundTripTest extends android.icu.dev.test.TestFmwk {
     public boolean INFINITE = false;
     public boolean quick = true;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatTest.java
index 7ae7dfa..9934878 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateFormatTest.java
@@ -58,7 +58,10 @@
 import android.icu.util.ULocale;
 import android.icu.util.UResourceBundle;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DateFormatTest extends android.icu.dev.test.TestFmwk {
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateIntervalFormatTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateIntervalFormatTest.java
index a8824c1..79eb66d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateIntervalFormatTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateIntervalFormatTest.java
@@ -28,7 +28,10 @@
 import android.icu.util.DateInterval;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DateIntervalFormatTest extends android.icu.dev.test.TestFmwk {
 
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateTimeGeneratorTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateTimeGeneratorTest.java
index 10c2fb4..75def1e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/DateTimeGeneratorTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/DateTimeGeneratorTest.java
@@ -36,7 +36,10 @@
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DateTimeGeneratorTest extends TestFmwk {
     public static boolean GENERATE_TEST_DATA;
     static {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/GlobalizationPreferencesTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/GlobalizationPreferencesTest.java
index b52ced9..0e1d9f4 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/GlobalizationPreferencesTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/GlobalizationPreferencesTest.java
@@ -28,9 +28,12 @@
 import android.icu.util.JapaneseCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 
+@RunWith(IcuTestFmwkRunner.class)
 public class GlobalizationPreferencesTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormat.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormat.java
index e87142f..c93d90b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormat.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormat.java
@@ -25,7 +25,10 @@
 import android.icu.text.DateFormat;
 import android.icu.text.SimpleDateFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestDateFormat extends android.icu.dev.test.TestFmwk {
     // Values in milliseconds (== Date)
     private static final long ONESECOND = 1000;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatAPI.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatAPI.java
index 5835b52..61f88b9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatAPI.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatAPI.java
@@ -29,7 +29,10 @@
 import android.icu.text.NumberFormat;
 import android.icu.util.Calendar;
 import android.icu.util.TimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestDateFormatAPI extends android.icu.dev.test.TestFmwk
 {
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatAPIC.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatAPIC.java
index 1f55725..d1155b7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatAPIC.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatAPIC.java
@@ -21,12 +21,15 @@
 import android.icu.text.DecimalFormat;
 import android.icu.text.NumberFormat;
 import android.icu.text.SimpleDateFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /*
  * This is an API test, not a unit test.  It doesn't test very many cases, and doesn't
  * try to test the full functionality.  It just calls each function in the class and
  * verifies that it works on a basic level.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestDateFormatAPIC extends android.icu.dev.test.TestFmwk {
     
     public static void main(String[] args)  throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatSymbols.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatSymbols.java
index 7eabcf2..293122b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatSymbols.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDateFormatSymbols.java
@@ -22,7 +22,10 @@
 import android.icu.text.DateFormatSymbols;
 import android.icu.util.Calendar;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestDateFormatSymbols extends android.icu.dev.test.TestFmwk
 {
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatAPI.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatAPI.java
index 815a85c..25751f3 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatAPI.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatAPI.java
@@ -28,7 +28,10 @@
 import android.icu.text.DecimalFormat;
 import android.icu.text.DecimalFormatSymbols;
 import android.icu.text.NumberFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestDecimalFormatAPI extends android.icu.dev.test.TestFmwk
 {
     public static void main(String[] args)  throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatAPIC.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatAPIC.java
index 790da97..4dc6836 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatAPIC.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatAPIC.java
@@ -25,10 +25,13 @@
 import android.icu.text.DecimalFormat;
 import android.icu.text.DecimalFormatSymbols;
 import android.icu.text.NumberFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 // This is an API test, not a unit test.  It doesn't test very many cases, and doesn't
 // try to test the full functionality.  It just calls each function in the class and
 // verifies that it works on a basic level.
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestDecimalFormatAPIC extends android.icu.dev.test.TestFmwk {
     
     public static void main(String[] args)  throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatSymbols.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatSymbols.java
index a1ce74b..d2f5aae 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatSymbols.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatSymbols.java
@@ -22,7 +22,10 @@
 
 import android.icu.text.DecimalFormatSymbols;
 import android.icu.util.Currency;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestDecimalFormatSymbols extends android.icu.dev.test.TestFmwk
 {
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatSymbolsC.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatSymbolsC.java
index 246b888..30f67e0 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatSymbolsC.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestDecimalFormatSymbolsC.java
@@ -18,10 +18,13 @@
 
 import android.icu.text.DecimalFormat;
 import android.icu.text.DecimalFormatSymbols;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Tests for DecimalFormatSymbols
  **/
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestDecimalFormatSymbolsC extends android.icu.dev.test.TestFmwk {
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestNumberFormat.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestNumberFormat.java
index a774889..df997a9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestNumberFormat.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestNumberFormat.java
@@ -17,11 +17,14 @@
 
 import android.icu.text.DecimalFormat;
 import android.icu.text.NumberFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * This test does round-trip testing (format -> parse -> format -> parse -> etc.) of
  * NumberFormat.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestNumberFormat extends android.icu.dev.test.TestFmwk {
     
     public NumberFormat fNumberFormat;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestNumberFormatAPI.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestNumberFormatAPI.java
index 12af09f..84db33d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestNumberFormatAPI.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestNumberFormatAPI.java
@@ -24,7 +24,10 @@
 
 import android.icu.text.NumberFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestNumberFormatAPI extends android.icu.dev.test.TestFmwk
 {
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestSimpleDateFormatAPI.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestSimpleDateFormatAPI.java
index b650e7b..07292ce 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestSimpleDateFormatAPI.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/IntlTestSimpleDateFormatAPI.java
@@ -27,11 +27,14 @@
 
 import android.icu.text.DateFormatSymbols;
 import android.icu.text.SimpleDateFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
 * @test 1.4 98/03/06
 * @summary test International Simple Date Format API
 */
+@RunWith(IcuTestFmwkRunner.class)
 public class IntlTestSimpleDateFormatAPI extends android.icu.dev.test.TestFmwk
 {
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/ListFormatterTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/ListFormatterTest.java
index bf19b22..1ed8dfd 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/ListFormatterTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/ListFormatterTest.java
@@ -13,7 +13,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.ListFormatter;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ListFormatterTest extends TestFmwk {
     public static void main(String[] args) {
         new ListFormatterTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/MeasureUnitTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/MeasureUnitTest.java
index 311ef62..f12b25d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/MeasureUnitTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/MeasureUnitTest.java
@@ -38,12 +38,15 @@
 import android.icu.util.TimeUnit;
 import android.icu.util.TimeUnitAmount;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * See https://sites.google.com/site/icusite/processes/release/tasks/standards?pli=1
  * for information on how to update with each new release.
  * @author markdavis
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class MeasureUnitTest extends TestFmwk {
     
     static class OrderedPair<F extends Comparable, S extends Comparable> extends Pair<F, S> implements Comparable<OrderedPair<F, S>> {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/MessagePatternUtilTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/MessagePatternUtilTest.java
index 970bd0b..f1a060b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/MessagePatternUtilTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/MessagePatternUtilTest.java
@@ -23,11 +23,14 @@
 import android.icu.text.MessagePatternUtil.MessageNode;
 import android.icu.text.MessagePatternUtil.TextNode;
 import android.icu.text.MessagePatternUtil.VariantNode;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test MessagePatternUtil (MessagePattern-as-tree-of-nodes API)
  * by building parallel trees of nodes and verifying that they match.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public final class MessagePatternUtilTest extends android.icu.dev.test.TestFmwk {
     public static void main(String[] args) throws Exception {
         new MessagePatternUtilTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/MessageRegression.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/MessageRegression.java
index 1815203..93faf44 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/MessageRegression.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/MessageRegression.java
@@ -47,7 +47,10 @@
 import android.icu.text.MessageFormat;
 import android.icu.text.NumberFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class MessageRegression extends android.icu.dev.test.TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRegistrationTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRegistrationTest.java
index 1aff69c..bbef5db 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRegistrationTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRegistrationTest.java
@@ -12,7 +12,10 @@
 import android.icu.text.NumberFormat;
 import android.icu.text.NumberFormat.SimpleNumberFormatFactory;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class NumberFormatRegistrationTest extends android.icu.dev.test.TestFmwk {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRegressionTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRegressionTest.java
index f90976c..908a41e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRegressionTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRegressionTest.java
@@ -27,10 +27,13 @@
 import android.icu.text.NumberFormat;
 import android.icu.util.Calendar;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /** 
  * Performs regression test for MessageFormat
  **/
+@RunWith(IcuTestFmwkRunner.class)
 public class NumberFormatRegressionTest extends android.icu.dev.test.TestFmwk {
     
     public static void main(String[] args) throws Exception{
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRoundTripTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRoundTripTest.java
index cf59f40..c2b0b17 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRoundTripTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatRoundTripTest.java
@@ -18,10 +18,13 @@
 
 import android.icu.text.DecimalFormat;
 import android.icu.text.NumberFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /** 
  * Performs round-trip tests for NumberFormat
  **/
+@RunWith(IcuTestFmwkRunner.class)
 public class NumberFormatRoundTripTest extends android.icu.dev.test.TestFmwk {
     
     public double MAX_ERROR = 1e-14;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatSpecificationTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatSpecificationTest.java
index fa1f813..ab98f56 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatSpecificationTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatSpecificationTest.java
@@ -13,11 +13,14 @@
 import android.icu.text.NumberFormat;
 import android.icu.util.Currency;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author rocketman
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class NumberFormatSpecificationTest extends TestFmwk {
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatTest.java
index ba9df40..098b102 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberFormatTest.java
@@ -40,7 +40,10 @@
 import android.icu.util.Currency;
 import android.icu.util.CurrencyAmount;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class NumberFormatTest extends android.icu.dev.test.TestFmwk {
     
     private static ULocale EN = new ULocale("en");
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberRegression.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberRegression.java
index aa824ef..e7684cd 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberRegression.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/NumberRegression.java
@@ -46,7 +46,10 @@
 import android.icu.util.GregorianCalendar;
 import android.icu.util.ULocale;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class NumberRegression extends android.icu.dev.test.TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralFormatTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralFormatTest.java
index 27f49f8..5a6b79a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralFormatTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralFormatTest.java
@@ -15,11 +15,14 @@
 import android.icu.text.CurrencyPluralInfo;
 import android.icu.text.PluralFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author tschumann (Tim Schumann)
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class PluralFormatTest extends TestFmwk {
   
   public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralFormatUnitTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralFormatUnitTest.java
index 5668635..5040006 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralFormatUnitTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralFormatUnitTest.java
@@ -26,11 +26,14 @@
 import android.icu.text.PluralRules.PluralType;
 import android.icu.text.PluralRules.SampleType;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author tschumann (Tim Schumann)
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class PluralFormatUnitTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new PluralFormatUnitTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralRangesTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralRangesTest.java
index 1062bc7..cca4a08 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralRangesTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralRangesTest.java
@@ -20,11 +20,14 @@
 import android.icu.util.Measure;
 import android.icu.util.MeasureUnit;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author markdavis
  * 
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class PluralRangesTest extends TestFmwk {
     public static void main(String[] args) {
         new PluralRangesTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralRulesTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralRulesTest.java
index 5a1f7fe..f39e32a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralRulesTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/PluralRulesTest.java
@@ -47,11 +47,14 @@
 import android.icu.text.UFieldPosition;
 import android.icu.util.Output;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author dougfelt (Doug Felt)
  * @author markdavis (Mark Davis) [for fractional support]
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class PluralRulesTest extends TestFmwk {
 
     PluralRulesFactory factory = PluralRulesFactory.NORMAL;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/RBNFParseTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/RBNFParseTest.java
index d687c50..2a93ff1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/RBNFParseTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/RBNFParseTest.java
@@ -12,7 +12,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.RuleBasedNumberFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class RBNFParseTest extends TestFmwk {
     public static void main(String[] args) {
         new RBNFParseTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfLenientScannerTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfLenientScannerTest.java
index f532df3..7ac67ae 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfLenientScannerTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfLenientScannerTest.java
@@ -17,7 +17,10 @@
 import android.icu.text.RbnfLenientScannerProvider;
 import android.icu.text.RuleBasedNumberFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class RbnfLenientScannerTest extends TestFmwk {
     private static final RbnfLenientScannerProvider provider = new RbnfScannerProviderImpl();
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfRoundTripTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfRoundTripTest.java
index e49f4d3..5954b53 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfRoundTripTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfRoundTripTest.java
@@ -11,7 +11,10 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.RuleBasedNumberFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class RbnfRoundTripTest extends TestFmwk {
     public static void main(String[] args) {
         RbnfRoundTripTest test = new RbnfRoundTripTest();
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfTest.java
index 2bbfb81..e99be6c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/RbnfTest.java
@@ -20,11 +20,14 @@
 import android.icu.text.NumberFormat;
 import android.icu.text.RuleBasedNumberFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * This does not test lenient parse mode, since testing the default implementation
  * introduces a dependency on collation.  See RbnfLenientScannerTest.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class RbnfTest extends TestFmwk {
     public static void main(String[] args) {
         RbnfTest test = new RbnfTest();
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/RelativeDateTimeFormatterTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/RelativeDateTimeFormatterTest.java
index 366a2ed..b952e41 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/RelativeDateTimeFormatterTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/RelativeDateTimeFormatterTest.java
@@ -17,7 +17,10 @@
 import android.icu.text.RelativeDateTimeFormatter.Direction;
 import android.icu.text.RelativeDateTimeFormatter.RelativeUnit;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class RelativeDateTimeFormatterTest extends TestFmwk {
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/ScientificNumberFormatterTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/ScientificNumberFormatterTest.java
index 5cfd7ea..1e9023e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/ScientificNumberFormatterTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/ScientificNumberFormatterTest.java
@@ -12,11 +12,14 @@
 import android.icu.text.NumberFormat;
 import android.icu.text.ScientificNumberFormatter;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author rocketman
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class ScientificNumberFormatterTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new ScientificNumberFormatterTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/SelectFormatAPITest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/SelectFormatAPITest.java
index 23c7e44..e50ce41 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/SelectFormatAPITest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/SelectFormatAPITest.java
@@ -13,11 +13,14 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.SelectFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author kirtig 
  * This class tests the API functionality of the SelectFormat
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class SelectFormatAPITest extends TestFmwk {
   
     static final String SIMPLE_PATTERN1 = "feminine {feminineVerbValue1} other{otherVerbValue1}";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/SelectFormatUnitTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/SelectFormatUnitTest.java
index ed4278a..75fe251 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/SelectFormatUnitTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/SelectFormatUnitTest.java
@@ -10,11 +10,14 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.SelectFormat;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author kirtig 
  * This class does the unit testing for the SelectFormat
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class SelectFormatUnitTest extends TestFmwk {
   
     static final String SIMPLE_PATTERN = "feminine {feminineVerbValue} other{otherVerbValue}";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/TestAll.java
index d71d7e9..f52cbc9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/TestAll.java
@@ -9,11 +9,14 @@
 package android.icu.dev.test.format;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
 
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public static void main(String[] args) {
@@ -38,7 +41,8 @@
               "Formatting Tests");
     }
 
-    public static class RBNF extends TestGroup {
+    @RunWith(IcuTestGroupRunner.class)
+	public static class RBNF extends TestGroup {
         public RBNF() {
             super(new String[] {
                 "RbnfTest",
@@ -48,7 +52,8 @@
         }
     }
 
-    public static class NumberFormat extends TestGroup {
+    @RunWith(IcuTestGroupRunner.class)
+	public static class NumberFormat extends TestGroup {
         public NumberFormat() {
             super(new String[] {
                 "CompactDecimalFormatTest",
@@ -69,7 +74,8 @@
         }
     }
 
-    public static class DateFormat extends TestGroup {
+    @RunWith(IcuTestGroupRunner.class)
+	public static class DateFormat extends TestGroup {
         public DateFormat() {
             super(new String[] {
                 "DateFormatMiscTests",
@@ -89,7 +95,8 @@
         }
     }
     
-    public static class DateIntervalFormat extends TestGroup {
+    @RunWith(IcuTestGroupRunner.class)
+	public static class DateIntervalFormat extends TestGroup {
         public DateIntervalFormat() {
             super(new String[] {
                 "DateIntervalFormatTest"
@@ -97,7 +104,8 @@
         }
     }
     
-    public static class TimeUnitFormat extends TestGroup {
+    @RunWith(IcuTestGroupRunner.class)
+	public static class TimeUnitFormat extends TestGroup {
         public TimeUnitFormat() {
             super(new String[] {
                 "TimeUnitTest"
@@ -105,7 +113,8 @@
         }
     }
     
-    public static class PluralFormat extends TestGroup {
+    @RunWith(IcuTestGroupRunner.class)
+	public static class PluralFormat extends TestGroup {
         public PluralFormat() {
             super(new String[] {
                 "PluralFormatUnitTest",
@@ -116,7 +125,8 @@
         }
     }
 
-    public static class SelectFormat extends TestGroup {
+    @RunWith(IcuTestGroupRunner.class)
+	public static class SelectFormat extends TestGroup {
         public SelectFormat() {
             super(new String[] {
                 "SelectFormatUnitTest",
@@ -125,7 +135,8 @@
         }
     }
 
-    public static class MessageFormat extends TestGroup {
+    @RunWith(IcuTestGroupRunner.class)
+	public static class MessageFormat extends TestGroup {
         public MessageFormat() {
             super(new String[] {
                 "TestMessageFormat",
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/TestMessageFormat.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/TestMessageFormat.java
index 517da01..45a1e23 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/TestMessageFormat.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/TestMessageFormat.java
@@ -35,7 +35,10 @@
 import android.icu.text.UFormat;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestMessageFormat extends android.icu.dev.test.TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/TimeUnitTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/TimeUnitTest.java
index 5a9fa37..5d9d79e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/TimeUnitTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/TimeUnitTest.java
@@ -21,11 +21,14 @@
 import android.icu.util.TimeUnit;
 import android.icu.util.TimeUnitAmount;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author markdavis
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeUnitTest extends TestFmwk {
     public static void main(String[] args) throws Exception{
         new TimeUnitTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/format/TimeZoneFormatTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/format/TimeZoneFormatTest.java
index 5b8ff74..ec84581 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/format/TimeZoneFormatTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/format/TimeZoneFormatTest.java
@@ -39,7 +39,10 @@
 import android.icu.util.TimeZone.SystemTimeZoneType;
 import android.icu.util.TimeZoneTransition;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeZoneFormatTest extends android.icu.dev.test.TestFmwk {
 
     private static boolean JDKTZ = (TimeZone.getDefaultTimeZoneType() == TimeZone.TIMEZONE_JDK);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/impl/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/impl/TestAll.java
index e8cba69..927e42a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/impl/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/impl/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.impl;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) throws Exception {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/iterator/TestUCharacterIterator.java b/android_icu4j/src/main/tests/android/icu/dev/test/iterator/TestUCharacterIterator.java
index 6e0b8f1..f738ded 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/iterator/TestUCharacterIterator.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/iterator/TestUCharacterIterator.java
@@ -14,6 +14,8 @@
 import android.icu.text.ReplaceableString;
 import android.icu.text.UCharacterIterator;
 import android.icu.text.UTF16;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author ram
@@ -23,6 +25,7 @@
  * To enable and disable the creation of type comments go to
  * Window>Preferences>Java>Code Generation.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TestUCharacterIterator extends TestFmwk{
 
     // constructor -----------------------------------------------------
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestAll.java
index 740797e..9c2c366 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.lang;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run character property tests.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) throws Exception {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestCharacter.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestCharacter.java
index 005ef78..85f049f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestCharacter.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestCharacter.java
@@ -8,7 +8,10 @@
 package android.icu.dev.test.lang;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
+@RunWith(IcuTestGroupRunner.class)
 public class TestCharacter extends TestGroup {
     public static void main(String[] args) {
         new TestCharacter().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestUScript.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestUScript.java
index e27bbdc..af31264 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestUScript.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestUScript.java
@@ -17,7 +17,10 @@
 import android.icu.lang.UScript.ScriptUsage;
 import android.icu.text.UnicodeSet;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestUScript extends TestFmwk {
 
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestUScriptRun.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestUScriptRun.java
index 1f2b79d..6a8783d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestUScriptRun.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/TestUScriptRun.java
@@ -11,7 +11,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.lang.UScript;
 import android.icu.lang.UScriptRun;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestUScriptRun extends TestFmwk
 {
     public TestUScriptRun()
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterCaseTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterCaseTest.java
index 527290e..f801ada 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterCaseTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterCaseTest.java
@@ -24,6 +24,8 @@
 import android.icu.text.RuleBasedBreakIterator;
 import android.icu.text.UTF16;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
@@ -32,6 +34,7 @@
 * @author Syn Wee Quek
 * @since march 14 2002
 */
+@RunWith(IcuTestFmwkRunner.class)
 public final class UCharacterCaseTest extends TestFmwk
 {
     // constructor -----------------------------------------------------------
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterCategoryTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterCategoryTest.java
index e140a81..89079da 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterCategoryTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterCategoryTest.java
@@ -8,12 +8,15 @@
 package android.icu.dev.test.lang;
 import android.icu.dev.test.TestFmwk;
 import android.icu.lang.UCharacterCategory;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
 * Testing UCharacterCategory
 * @author Syn Wee Quek
 * @since April 02 2002
 */
+@RunWith(IcuTestFmwkRunner.class)
 public class UCharacterCategoryTest extends TestFmwk
 {
     // constructor -----------------------------------------------------------
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterDirectionTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterDirectionTest.java
index 858b827..3993592 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterDirectionTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterDirectionTest.java
@@ -9,12 +9,15 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.lang.UCharacterDirection;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
 * Testing UCharacterDirection
 * @author Syn Wee Quek
 * @since July 22 2002
 */
+@RunWith(IcuTestFmwkRunner.class)
 public class UCharacterDirectionTest extends TestFmwk
 {    
     // constructor -----------------------------------------------------------
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterSurrogateTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterSurrogateTest.java
index 7457c4e..e624323 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterSurrogateTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterSurrogateTest.java
@@ -12,10 +12,13 @@
 import android.icu.impl.Utility;
 import android.icu.lang.UCharacter;
 import android.icu.text.UTF16;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test JDK 1.5 cover APIs.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public final class UCharacterSurrogateTest extends TestFmwk {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterTest.java
index a62574e..b169673 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterTest.java
@@ -34,6 +34,8 @@
 import android.icu.util.ULocale;
 import android.icu.util.ValueIterator;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
 * Testing class for UCharacter
@@ -41,6 +43,7 @@
 * @author Syn Wee Quek
 * @since nov 04 2000
 */
+@RunWith(IcuTestFmwkRunner.class)
 public final class UCharacterTest extends TestFmwk
 {
     // private variables =============================================
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterThreadTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterThreadTest.java
index 1abcd29..daa35af 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterThreadTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UCharacterThreadTest.java
@@ -13,11 +13,14 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.lang.UCharacter;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author aheninger
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class UCharacterThreadTest extends TestFmwk {
   // constructor -----------------------------------------------------------
     
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UPropertyAliasesTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UPropertyAliasesTest.java
index 6923db3..b2e7a41 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UPropertyAliasesTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UPropertyAliasesTest.java
@@ -14,7 +14,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.lang.UCharacter;
 import android.icu.lang.UProperty;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class UPropertyAliasesTest extends TestFmwk {
   
     public UPropertyAliasesTest() {}
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UTF16Test.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UTF16Test.java
index 8a42a18..5cce7a6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UTF16Test.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UTF16Test.java
@@ -15,12 +15,15 @@
 import android.icu.text.ReplaceableString;
 import android.icu.text.UTF16;
 import android.icu.text.UTF16.StringComparator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
 * Testing class for UTF16
 * @author Syn Wee Quek
 * @since feb 09 2001
 */
+@RunWith(IcuTestFmwkRunner.class)
 public final class UTF16Test extends TestFmwk
 {
     // constructor ===================================================
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UnicodeSetStringSpanTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UnicodeSetStringSpanTest.java
index 08c9ad4..8d00666 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UnicodeSetStringSpanTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UnicodeSetStringSpanTest.java
@@ -15,11 +15,14 @@
 import android.icu.text.UnicodeSet;
 import android.icu.text.UnicodeSet.SpanCondition;
 import android.icu.util.OutputInt;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary General test of UnicodeSet string span.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class UnicodeSetStringSpanTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UnicodeSetTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UnicodeSetTest.java
index 8ade31d..10e1279 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/lang/UnicodeSetTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/lang/UnicodeSetTest.java
@@ -42,11 +42,14 @@
 import android.icu.text.UnicodeSetSpanner.CountMethod;
 import android.icu.text.UnicodeSetSpanner.TrimOption;
 import android.icu.util.OutputInt;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary General test of UnicodeSet
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class UnicodeSetTest extends TestFmwk {
 
     static final String NOT = "%%%%";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/BasicTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/BasicTest.java
index 2ab1c3f..7f5700d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/BasicTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/BasicTest.java
@@ -26,8 +26,11 @@
 import android.icu.text.UTF16;
 import android.icu.text.UnicodeSet;
 import android.icu.text.UnicodeSetIterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
+@RunWith(IcuTestFmwkRunner.class)
 public class BasicTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new BasicTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/ConformanceTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/ConformanceTest.java
index bead972..9e0cf82 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/ConformanceTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/ConformanceTest.java
@@ -18,7 +18,10 @@
 import android.icu.text.Normalizer;
 import android.icu.text.UTF16;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ConformanceTest extends TestFmwk {
 
     Normalizer normalizer;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/NormalizationMonkeyTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/NormalizationMonkeyTest.java
index 000f86c..de8e5a7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/NormalizationMonkeyTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/NormalizationMonkeyTest.java
@@ -15,7 +15,10 @@
 import android.icu.lang.UCharacterCategory;
 import android.icu.text.Normalizer;
 import android.icu.text.UTF16;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class NormalizationMonkeyTest extends TestFmwk {
     int loopCount = 100;
     int maxCharCount = 20;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/NormalizerRegressionTests.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/NormalizerRegressionTests.java
index 0fe6f71..bf4aba8 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/NormalizerRegressionTests.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/NormalizerRegressionTests.java
@@ -10,7 +10,10 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.Normalizer;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class NormalizerRegressionTests extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new NormalizerRegressionTests().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestAll.java
index ed5e6e6..c5f44bf 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.normalizer;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run normalizer tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestCanonicalIterator.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestCanonicalIterator.java
index 564a941..593a603 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestCanonicalIterator.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestCanonicalIterator.java
@@ -19,10 +19,13 @@
 import android.icu.text.CanonicalIterator;
 import android.icu.text.Normalizer;
 import android.icu.text.UTF16;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 // TODO: fit into test framework
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestCanonicalIterator extends TestFmwk {
     
     static final boolean SHOW_NAMES = false;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestDeprecatedNormalizerAPI.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestDeprecatedNormalizerAPI.java
index 35e3f0e..d03220c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestDeprecatedNormalizerAPI.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/TestDeprecatedNormalizerAPI.java
@@ -14,7 +14,10 @@
 import android.icu.text.ComposedCharIter;
 import android.icu.text.Normalizer;
 import android.icu.text.StringCharacterIterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestDeprecatedNormalizerAPI extends TestFmwk
 {
      
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/UTS46Test.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/UTS46Test.java
index 0e2af87..8599dcf 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/UTS46Test.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/UTS46Test.java
@@ -16,12 +16,15 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.impl.Normalizer2Impl.UTF16Plus;
 import android.icu.text.IDNA;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * UTS #46 (IDNA2008) test.
  * @author Markus Scherer
  * @since 2010jul10
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class UTS46Test extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new UTS46Test().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/UnicodeNormalizerConformanceTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/UnicodeNormalizerConformanceTest.java
index 313f4ae..4d556b6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/UnicodeNormalizerConformanceTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/normalizer/UnicodeNormalizerConformanceTest.java
@@ -15,8 +15,11 @@
 import android.icu.dev.test.TestUtil;
 import android.icu.text.UTF16;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
+@RunWith(IcuTestFmwkRunner.class)
 public class UnicodeNormalizerConformanceTest extends TestFmwk {
 
     UnicodeNormalizer normalizer_C, normalizer_D, normalizer_KC, normalizer_KD;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/BreakIteratorRegTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/BreakIteratorRegTest.java
index 56fe1b1..2fb35ed 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/BreakIteratorRegTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/BreakIteratorRegTest.java
@@ -13,7 +13,10 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.BreakIterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class BreakIteratorRegTest extends TestFmwk
 {
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/BreakIteratorTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/BreakIteratorTest.java
index af2a165..1cc8afe 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/BreakIteratorTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/BreakIteratorTest.java
@@ -16,7 +16,10 @@
 import android.icu.text.BreakIterator;
 import android.icu.text.FilteredBreakIteratorBuilder;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class BreakIteratorTest extends TestFmwk
 {
     private BreakIterator characterBreak;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBIAPITest.java b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBIAPITest.java
index 66e5785..53313e7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBIAPITest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBIAPITest.java
@@ -20,10 +20,13 @@
 import android.icu.text.BreakIterator;
 import android.icu.text.RuleBasedBreakIterator;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * API Test the RuleBasedBreakIterator class
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class RBBIAPITest extends android.icu.dev.test.TestFmwk {
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITest.java b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITest.java
index 5c56eeb..c8347b2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITest.java
@@ -23,7 +23,10 @@
 import android.icu.text.BreakIterator;
 import android.icu.text.RuleBasedBreakIterator;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class RBBITest extends TestFmwk {  
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITestExtended.java b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITestExtended.java
index 692b917..5ed8313 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITestExtended.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITestExtended.java
@@ -19,6 +19,8 @@
 import android.icu.text.BreakIterator;
 import android.icu.text.UTF16;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
@@ -28,6 +30,7 @@
  *      See the data file for a description of the tests.
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class RBBITestExtended extends TestFmwk {
 
     public static void main(String[] args)throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITestMonkey.java b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITestMonkey.java
index 1b75950..cf77913 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITestMonkey.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/RBBITestMonkey.java
@@ -21,6 +21,8 @@
 import android.icu.text.RuleBasedBreakIterator;
 import android.icu.text.UTF16;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
@@ -33,6 +35,7 @@
  * Ported from ICU4C, original code in file source/test/intltest/rbbitst.cpp
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class RBBITestMonkey extends TestFmwk {
     
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/SimpleBITest.java b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/SimpleBITest.java
index 072f9fd..dcc5650 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/SimpleBITest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/SimpleBITest.java
@@ -12,6 +12,8 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.BreakIterator;
 import android.icu.text.RuleBasedBreakIterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 // TODO: {dlf} this test currently doesn't test anything!
 // You'll notice that the resource that uses the dictionary isn't even on the resource path,
@@ -45,6 +47,7 @@
 // that important, since we have a thai dictionary that we do test thoroughly.
 //
 
+@RunWith(IcuTestFmwkRunner.class)
 public class SimpleBITest extends TestFmwk{
     public static final String testText =
 //        "The rain in Spain stays mainly on the plain.  The plains in Spain are mainly pained with rain.";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/TestAll.java
index 246db34..f9b3616 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/rbbi/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.rbbi;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public static void main(String[] args) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/sample/ModuleTestSample.java b/android_icu4j/src/main/tests/android/icu/dev/test/sample/ModuleTestSample.java
index fe020c9..b581011 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/sample/ModuleTestSample.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/sample/ModuleTestSample.java
@@ -8,7 +8,10 @@
 package android.icu.dev.test.sample;
 
 import android.icu.dev.test.ModuleTest;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ModuleTestSample extends ModuleTest {
     public static void main(String[] args) throws Exception {
     new ModuleTestSample().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/search/SearchTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/search/SearchTest.java
index aad8a34..f5462f8 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/search/SearchTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/search/SearchTest.java
@@ -33,7 +33,10 @@
 import android.icu.text.SearchIterator.ElementComparisonType;
 import android.icu.text.StringSearch;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class SearchTest extends TestFmwk {
 
     //inner class
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/CompatibilityTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/CompatibilityTest.java
index a71a765..95a0245 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/CompatibilityTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/CompatibilityTest.java
@@ -18,6 +18,7 @@
 import java.io.InputStream;
 import java.io.ObjectInputStream;
 import java.net.JarURLConnection;
+import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.Enumeration;
 import java.util.MissingResourceException;
@@ -25,10 +26,13 @@
 import java.util.jar.JarFile;
 
 import android.icu.dev.test.TestFmwk;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author emader
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class CompatibilityTest extends TestFmwk
 {
     public class FolderTarget extends Target
@@ -236,6 +240,14 @@
         }
 
         try {
+            // android-changed - need to trim the directory off the JAR entry before opening the
+            // connection otherwise it could fail as it will try and find the entry within the JAR
+            // which may not exist.
+            String urlAsString = jarURL.toExternalForm();
+            ix = urlAsString.indexOf("!/");
+            jarURL = new URL(urlAsString.substring(0, ix + 2));
+            // end android-changed
+
             JarURLConnection conn = (JarURLConnection) jarURL.openConnection();
             JarFile jarFile = conn.getJarFile();
             try {
@@ -292,10 +304,28 @@
 
         return target;
     }
-    
+
+    // android-changed - need to access an actual resource file
+    /**
+     * The path to an actual data resource file in the JAR. This is needed because when the
+     * code is packaged for Android the resulting archive does not have entries for directories
+     * and so only actual resources can be found.
+     */
+    private static final String ACTUAL_RESOURCE = "/ICU_3.6/android.icu.impl.OlsonTimeZone.dat";
+    // end android-changed
+
     protected Target getTargets(String targetName)
     {
-        URL dataURL = getClass().getResource("data");
+        // android-changed - locate an actual resource and find the containing JAR file/directory
+        // Get the URL to an actual resource and then compute the URL to the directory just in
+        // case the resources are in a JAR file that doesn't have entries for directories.
+        URL dataURL = getClass().getResource("data" + ACTUAL_RESOURCE);
+        try {
+            dataURL = new URL(dataURL.toExternalForm().replace(ACTUAL_RESOURCE, ""));
+        } catch (MalformedURLException e) {
+            throw new RuntimeException(e);
+        }
+        // end android-changed
         String protocol = dataURL.getProtocol();
         
         if (protocol.equals("jar")) {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/CoverageTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/CoverageTest.java
index 46c6961..457f071 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/CoverageTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/CoverageTest.java
@@ -20,6 +20,8 @@
 import java.util.Enumeration;
 
 import android.icu.impl.URLHandler;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author emader
@@ -27,6 +29,7 @@
  * TODO To change the template for this generated type comment go to
  * Window - Preferences - Java - Code Style - Code Templates
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class CoverageTest extends CompatibilityTest implements URLHandler.URLVisitor
 {
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/SerializableTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/SerializableTest.java
index 2be1065..edf7591 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/SerializableTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/SerializableTest.java
@@ -39,6 +39,8 @@
 import android.icu.util.TimeZoneRule;
 import android.icu.util.ULocale;
 import android.icu.util.VTimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * @author emader
@@ -46,6 +48,7 @@
  * TODO To change the template for this generated type comment go to
  * Window - Preferences - Java - Code Style - Code Templates
  */
+@RunWith(IcuTestGroupRunner.class)
 public class SerializableTest extends TestFmwk.TestGroup
 {
     public interface Handler
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/SerializableWriter.java b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/SerializableWriter.java
index 38e1824..999f284 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/SerializableWriter.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/SerializableWriter.java
@@ -12,6 +12,8 @@
 import java.net.URL;
 
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * This class writes the test objects for each class to a file. The work is
@@ -19,6 +21,7 @@
  * a CoverageTest w/ a non-null path, which tells it to write the data.
  * 
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class SerializableWriter extends CoverageTest
 {
     public SerializableWriter(String path)
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.impl.OlsonTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.impl.OlsonTimeZone.dat
similarity index 96%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.impl.OlsonTimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.impl.OlsonTimeZone.dat
index befb4b1..3d00b26 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.impl.OlsonTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.impl.OlsonTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.impl.TimeZoneAdapter.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.impl.TimeZoneAdapter.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.impl.TimeZoneAdapter.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.impl.TimeZoneAdapter.dat
index 347e616..432c9dd 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.impl.TimeZoneAdapter.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.impl.TimeZoneAdapter.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.math.BigDecimal.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.math.BigDecimal.dat
index b27bcaf..dd4ce52 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.math.BigDecimal.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.MathContext.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.math.MathContext.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.MathContext.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.math.MathContext.dat
index da7bc60..da71167 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.MathContext.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.math.MathContext.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ArabicShapingException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ArabicShapingException.dat
similarity index 91%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ArabicShapingException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ArabicShapingException.dat
index a20b286..9baef82 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ArabicShapingException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ArabicShapingException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ChineseDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ChineseDateFormat.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ChineseDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ChineseDateFormat.dat
index 35f6713..367068f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ChineseDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ChineseDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ChineseDateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ChineseDateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ChineseDateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ChineseDateFormatSymbols.dat
index 75e77dd..7735c89 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.ChineseDateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.ChineseDateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DateFormat.dat
similarity index 96%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DateFormat.dat
index d5c05c8..5db3646 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DateFormatSymbols.dat
index 2368969..f9817ee 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DecimalFormat.dat
similarity index 90%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DecimalFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DecimalFormat.dat
index a7be894..ae7ad3e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DecimalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DecimalFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DecimalFormatSymbols.dat
similarity index 91%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DecimalFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DecimalFormatSymbols.dat
index 81df833..bd6bfd6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.DecimalFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.DecimalFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.MessageFormat.dat
similarity index 60%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.MessageFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.MessageFormat.dat
index 43ac993..4886270 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.MessageFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.MessageFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.NumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.NumberFormat.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.NumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.NumberFormat.dat
index ad69392..3cfb9a3 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.NumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.NumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.RuleBasedNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.RuleBasedNumberFormat.dat
similarity index 99%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.RuleBasedNumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.RuleBasedNumberFormat.dat
index 9524b86..8bf08a0 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.RuleBasedNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.RuleBasedNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.SimpleDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.SimpleDateFormat.dat
similarity index 99%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.SimpleDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.SimpleDateFormat.dat
index 99e126e..373b2af 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.SimpleDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.SimpleDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.StringPrepParseException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.StringPrepParseException.dat
similarity index 94%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.StringPrepParseException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.StringPrepParseException.dat
index ffa402b..876fad2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.text.StringPrepParseException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.text.StringPrepParseException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.BuddhistCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.BuddhistCalendar.dat
similarity index 73%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.BuddhistCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.BuddhistCalendar.dat
index f270749..7b54658 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.BuddhistCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.BuddhistCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.Calendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.Calendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.Calendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.Calendar.dat
index ec5a2d7..dfe322f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.Calendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.Calendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.ChineseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.ChineseCalendar.dat
similarity index 76%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.ChineseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.ChineseCalendar.dat
index 7d900da..80abca2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.ChineseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.ChineseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.CopticCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.CopticCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.CopticCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.CopticCalendar.dat
index c3df1ab..443d85c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.CopticCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.CopticCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.Currency.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.Currency.dat
similarity index 63%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.Currency.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.Currency.dat
index 039c6da..4cc226d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.Currency.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.Currency.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.EthiopicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.EthiopicCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.EthiopicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.EthiopicCalendar.dat
index 3a3db02..4220417 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.EthiopicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.EthiopicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.GregorianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.GregorianCalendar.dat
similarity index 73%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.GregorianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.GregorianCalendar.dat
index e51df34..ce58fe6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.GregorianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.GregorianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.HebrewCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.HebrewCalendar.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.HebrewCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.HebrewCalendar.dat
index dc6ef87..d0cce8b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.HebrewCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.HebrewCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.IslamicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.IslamicCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.IslamicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.IslamicCalendar.dat
index b979f28..34c6f6b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.IslamicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.IslamicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.JapaneseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.JapaneseCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.JapaneseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.JapaneseCalendar.dat
index 804acc0..36e99a8 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.JapaneseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.JapaneseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.SimpleTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.SimpleTimeZone.dat
similarity index 69%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.SimpleTimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.SimpleTimeZone.dat
index 3940bde..c90cab1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.SimpleTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.SimpleTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.TimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.TimeZone.dat
similarity index 70%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.TimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.TimeZone.dat
index 00ac1ec..a592a45 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.TimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.TimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.ULocale.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.ULocale.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.ULocale.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.ULocale.dat
index 1eed327..a2d8072 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.ULocale.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.ULocale.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.UResourceTypeMismatchException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.UResourceTypeMismatchException.dat
similarity index 91%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.UResourceTypeMismatchException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.UResourceTypeMismatchException.dat
index 5fd5df5..18a6192 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.util.UResourceTypeMismatchException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/android.icu.util.UResourceTypeMismatchException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.DateNumberFormat.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.DateNumberFormat.dat
index 571713e..ab393f6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.DateNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.IllegalIcuArgumentException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.IllegalIcuArgumentException.dat
new file mode 100644
index 0000000..f64223d
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.IllegalIcuArgumentException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.InvalidFormatException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.InvalidFormatException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.InvalidFormatException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.InvalidFormatException.dat
index a811823..b39f3be 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.InvalidFormatException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.InvalidFormatException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.OlsonTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.OlsonTimeZone.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.OlsonTimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.OlsonTimeZone.dat
index 850af67..8f32858 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.OlsonTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.OlsonTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.RelativeDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.RelativeDateFormat.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.RelativeDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.RelativeDateFormat.dat
index c8b20e6..d10ded7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.RelativeDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.RelativeDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneAdapter.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneAdapter.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneAdapter.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneAdapter.dat
index 6b1b117..94e4024 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneAdapter.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneAdapter.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneGenericNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneGenericNames.dat
new file mode 100644
index 0000000..de19e07
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneGenericNames.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneNamesImpl.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneNamesImpl.dat
new file mode 100644
index 0000000..c04af70
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.TimeZoneNamesImpl.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.duration.BasicDurationFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.duration.BasicDurationFormat.dat
new file mode 100644
index 0000000..3bfb442
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.duration.BasicDurationFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.locale.LocaleSyntaxException.dat
similarity index 64%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.locale.LocaleSyntaxException.dat
index 5fd0d38..5092bb3 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.impl.locale.LocaleSyntaxException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.math.BigDecimal.dat
similarity index 75%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.math.BigDecimal.dat
index b27bcaf..dd4ce52 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.math.BigDecimal.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.math.MathContext.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.math.MathContext.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.math.MathContext.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.math.MathContext.dat
index da7bc60..da71167 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.math.MathContext.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.math.MathContext.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ArabicShapingException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ArabicShapingException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ArabicShapingException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ArabicShapingException.dat
index 3a08b6d..c062af3 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ArabicShapingException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ArabicShapingException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormat$Field.dat
new file mode 100644
index 0000000..1480893
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormat.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormat.dat
index bb0a567..1603b8e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormatSymbols.dat
index 3b76446..a1b1403 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.ChineseDateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.CompactDecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.CompactDecimalFormat.dat
new file mode 100644
index 0000000..4795b26
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.CompactDecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.CurrencyPluralInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.CurrencyPluralInfo.dat
similarity index 67%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.CurrencyPluralInfo.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.CurrencyPluralInfo.dat
index e4a73f1..c82b52e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.CurrencyPluralInfo.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.CurrencyPluralInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormat$Field.dat
similarity index 91%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormat$Field.dat
index a7cf736..06b87bb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormat.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormat.dat
index 25cda28..8c5963e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormatSymbols.dat
index 5bcd9f6..b085460 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalFormat.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalFormat.dat
index 0599463..faa4fab 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalInfo$PatternInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalInfo$PatternInfo.dat
new file mode 100644
index 0000000..25ebef5
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalInfo$PatternInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalInfo.dat
similarity index 66%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalInfo.dat
index b75cfcb..59c719a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DateIntervalInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DecimalFormat.dat
similarity index 91%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DecimalFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DecimalFormat.dat
index 18aee20..6781fe5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DecimalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DecimalFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DecimalFormatSymbols.dat
similarity index 94%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DecimalFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DecimalFormatSymbols.dat
index b6b6d19..72f1bd1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DecimalFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.DecimalFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MeasureFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MeasureFormat.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MeasureFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MeasureFormat.dat
index f0ee673..1fa9bfb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MeasureFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MeasureFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MessageFormat$Field.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MessageFormat$Field.dat
index f30df97..a1aca43 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MessageFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MessageFormat.dat
new file mode 100644
index 0000000..3e8d13f
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.MessageFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.NumberFormat$Field.dat
similarity index 71%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.NumberFormat$Field.dat
index cab3e3d..78dbc51 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.NumberFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.NumberFormat.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.NumberFormat.dat
index e98defd..2e1a294 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.NumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.PluralFormat.dat
similarity index 70%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.PluralFormat.dat
index 0557425..a3f8aa2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.PluralFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.PluralRules.dat
similarity index 85%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.PluralRules.dat
index 6982646..8e3375b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.PluralRules.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.RuleBasedNumberFormat.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.RuleBasedNumberFormat.dat
index 280dd91..8d048cf 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.RuleBasedNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.SelectFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.SelectFormat.dat
new file mode 100644
index 0000000..bbd3865
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.SelectFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.SimpleDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.SimpleDateFormat.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.SimpleDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.SimpleDateFormat.dat
index 093c64a..b5aad59 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.SimpleDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.SimpleDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.StringPrepParseException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.StringPrepParseException.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.StringPrepParseException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.StringPrepParseException.dat
index 6d78381..de03096 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.StringPrepParseException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.StringPrepParseException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.TimeUnitFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.TimeUnitFormat.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.TimeUnitFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.TimeUnitFormat.dat
index 174cfd8..c582c9e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.TimeUnitFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.TimeUnitFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.TimeZoneFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.TimeZoneFormat.dat
new file mode 100644
index 0000000..247ad4f
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.text.TimeZoneFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.AnnualTimeZoneRule.dat
similarity index 68%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.AnnualTimeZoneRule.dat
index 095de16..da8dfef 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.AnnualTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.BuddhistCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.BuddhistCalendar.dat
similarity index 73%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.BuddhistCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.BuddhistCalendar.dat
index 306af7b..5c11fe7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.BuddhistCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.BuddhistCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Calendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.Calendar.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Calendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.Calendar.dat
index baff883..6cabb36 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Calendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.Calendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ChineseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ChineseCalendar.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ChineseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ChineseCalendar.dat
index 4242810..39b65d7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ChineseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ChineseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.CopticCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.CopticCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.CopticCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.CopticCalendar.dat
index 9d7aa8b..2be9762 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.CopticCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.CopticCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.Currency.dat
similarity index 81%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.Currency.dat
index 24627cc..7566c1d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.Currency.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DangiCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DangiCalendar.dat
similarity index 68%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DangiCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DangiCalendar.dat
index b0afa61..9170579 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DangiCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DangiCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DateInterval.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DateInterval.dat
new file mode 100644
index 0000000..c30bb84
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DateInterval.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DateTimeRule.dat
similarity index 63%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DateTimeRule.dat
index ed13388..7057de9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.DateTimeRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.EthiopicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.EthiopicCalendar.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.EthiopicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.EthiopicCalendar.dat
index 09d90b5..699266a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.EthiopicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.EthiopicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.GregorianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.GregorianCalendar.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.GregorianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.GregorianCalendar.dat
index 2b27148..37eaffc 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.GregorianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.GregorianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.HebrewCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.HebrewCalendar.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.HebrewCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.HebrewCalendar.dat
index f7b698f..9a5d627 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.HebrewCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.HebrewCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUCloneNotSupportedException.dat
similarity index 76%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUCloneNotSupportedException.dat
index 40c3929..747d6f2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUCloneNotSupportedException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUException.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUException.dat
index 704c7c7..3f60b90 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUUncheckedIOException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUUncheckedIOException.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUUncheckedIOException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUUncheckedIOException.dat
index e4e611c..453f56b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ICUUncheckedIOException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ICUUncheckedIOException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IllformedLocaleException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IllformedLocaleException.dat
similarity index 64%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IllformedLocaleException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IllformedLocaleException.dat
index f6c891c..dd762cd 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IllformedLocaleException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IllformedLocaleException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IndianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IndianCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IndianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IndianCalendar.dat
index f4417fb..44cda79 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IndianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IndianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.InitialTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.InitialTimeZoneRule.dat
new file mode 100644
index 0000000..cc19377
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.InitialTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IslamicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IslamicCalendar.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IslamicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IslamicCalendar.dat
index f273266..baa14c7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.IslamicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.IslamicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.JapaneseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.JapaneseCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.JapaneseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.JapaneseCalendar.dat
index b29ca70..3b1cf48 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.JapaneseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.JapaneseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.MeasureUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.MeasureUnit.dat
new file mode 100644
index 0000000..e97cd29
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.MeasureUnit.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.PersianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.PersianCalendar.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.PersianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.PersianCalendar.dat
index 5264eed..141e6b7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.PersianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.PersianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.RuleBasedTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.RuleBasedTimeZone.dat
new file mode 100644
index 0000000..9271a99
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.RuleBasedTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.SimpleTimeZone.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.SimpleTimeZone.dat
index 216f9a5..71d8d1a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.SimpleTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TaiwanCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TaiwanCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TaiwanCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TaiwanCalendar.dat
index 69d12a6..38feaec 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TaiwanCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TaiwanCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeArrayTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeArrayTimeZoneRule.dat
new file mode 100644
index 0000000..189e4da
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeArrayTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeUnit.dat
new file mode 100644
index 0000000..e97cd29
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeUnit.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeZone.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeZone.dat
index 5d69e24..04eff58 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.TimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ULocale.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ULocale.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ULocale.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ULocale.dat
index ef20832..b222926 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.ULocale.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.ULocale.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.UResourceTypeMismatchException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.UResourceTypeMismatchException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.UResourceTypeMismatchException.dat
index b411de5..70d6c32 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.UResourceTypeMismatchException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.VTimeZone.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.VTimeZone.dat
index 77e2c5b..1f69b29 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/android.icu.util.VTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat
deleted file mode 100644
index 0a19008..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.JavaTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.JavaTimeZone.dat
deleted file mode 100644
index f3e44f0..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.JavaTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneGenericNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneGenericNames.dat
deleted file mode 100644
index 056868d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneGenericNames.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat
deleted file mode 100644
index 9548e9a..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat
deleted file mode 100644
index 883e9ae..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.math.BigDecimal.dat
deleted file mode 100644
index b27bcaf..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.math.BigDecimal.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormat$Field.dat
deleted file mode 100644
index 2eb95fa..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.ChineseDateFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.CompactDecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.CompactDecimalFormat.dat
deleted file mode 100644
index 9252bf2..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.CompactDecimalFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat
deleted file mode 100644
index 6bc48a9..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat.dat
deleted file mode 100644
index 5f0b1bb..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.SelectFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.SelectFormat.dat
deleted file mode 100644
index 3fd758f..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.SelectFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.TimeZoneFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.TimeZoneFormat.dat
deleted file mode 100644
index 6a8bffd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.TimeZoneFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateInterval.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateInterval.dat
deleted file mode 100644
index 71d7222..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateInterval.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.InitialTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.InitialTimeZoneRule.dat
deleted file mode 100644
index 7da9b4d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.InitialTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.MeasureUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.MeasureUnit.dat
deleted file mode 100644
index 9f01834..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.MeasureUnit.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.RuleBasedTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.RuleBasedTimeZone.dat
deleted file mode 100644
index 285f405..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.RuleBasedTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat
deleted file mode 100644
index b2224bd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeUnit.dat
deleted file mode 100644
index 9f01834..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeUnit.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.DateNumberFormat.dat
similarity index 80%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.DateNumberFormat.dat
index 571713e..ab393f6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.DateNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.IllegalIcuArgumentException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.IllegalIcuArgumentException.dat
new file mode 100644
index 0000000..574c34c
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.IllegalIcuArgumentException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.InvalidFormatException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.InvalidFormatException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.InvalidFormatException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.InvalidFormatException.dat
index 50b2ca4..9e4210f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.InvalidFormatException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.InvalidFormatException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.OlsonTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.OlsonTimeZone.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.OlsonTimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.OlsonTimeZone.dat
index 510d9d9..93b91ed 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.OlsonTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.OlsonTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.RelativeDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.RelativeDateFormat.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.RelativeDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.RelativeDateFormat.dat
index b61c86a..979e41d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.RelativeDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.RelativeDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TZDBTimeZoneNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TZDBTimeZoneNames.dat
new file mode 100644
index 0000000..be04632
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TZDBTimeZoneNames.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneAdapter.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneAdapter.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneAdapter.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneAdapter.dat
index d666cdd..d830ba8 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneAdapter.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneAdapter.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneGenericNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneGenericNames.dat
new file mode 100644
index 0000000..de19e07
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneGenericNames.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneNamesImpl.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneNamesImpl.dat
new file mode 100644
index 0000000..c04af70
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.TimeZoneNamesImpl.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.duration.BasicDurationFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.duration.BasicDurationFormat.dat
new file mode 100644
index 0000000..3bfb442
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.duration.BasicDurationFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.locale.LocaleSyntaxException.dat
similarity index 64%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.locale.LocaleSyntaxException.dat
index 43085ef..947bafd 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.impl.locale.LocaleSyntaxException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.math.BigDecimal.dat
similarity index 75%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.math.BigDecimal.dat
index b27bcaf..dd4ce52 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.math.BigDecimal.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.math.MathContext.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.math.MathContext.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.math.MathContext.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.math.MathContext.dat
index da7bc60..da71167 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.math.MathContext.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.math.MathContext.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ArabicShapingException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ArabicShapingException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ArabicShapingException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ArabicShapingException.dat
index 5a3d6de..895843b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ArabicShapingException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ArabicShapingException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormat$Field.dat
new file mode 100644
index 0000000..1480893
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormat.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormat.dat
index 467ffa4..739aa71 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormatSymbols.dat
index 774f88f..49b4f19 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.ChineseDateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.CompactDecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.CompactDecimalFormat.dat
new file mode 100644
index 0000000..4795b26
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.CompactDecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.CurrencyPluralInfo.dat
similarity index 67%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.CurrencyPluralInfo.dat
index ad74641..56cc8f2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.CurrencyPluralInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormat$Field.dat
similarity index 91%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormat$Field.dat
index a7cf736..06b87bb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormat.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormat.dat
index 5fd1cf5..027ad98 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormatSymbols.dat
index 8305a96..1e0cdf0 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalFormat.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalFormat.dat
index 458cd5c..05915f7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalInfo$PatternInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalInfo$PatternInfo.dat
new file mode 100644
index 0000000..25ebef5
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalInfo$PatternInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalInfo.dat
similarity index 66%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalInfo.dat
index b75cfcb..59c719a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DateIntervalInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DecimalFormat.dat
similarity index 90%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DecimalFormat.dat
index 45de6ac..ee28d58 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DecimalFormatSymbols.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DecimalFormatSymbols.dat
index af2d6fb..79d4a0a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.DecimalFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MeasureFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MeasureFormat.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MeasureFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MeasureFormat.dat
index 7814c33..7887c61 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MeasureFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MeasureFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MessageFormat$Field.dat
similarity index 74%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MessageFormat$Field.dat
index f30df97..a1aca43 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MessageFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MessageFormat.dat
new file mode 100644
index 0000000..3e8d13f
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.MessageFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.NumberFormat$Field.dat
similarity index 71%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.NumberFormat$Field.dat
index cab3e3d..78dbc51 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.NumberFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.NumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.NumberFormat.dat
similarity index 76%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.NumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.NumberFormat.dat
index 9035d6b..63f16d4 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.NumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.NumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.PluralFormat.dat
similarity index 68%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.PluralFormat.dat
index 6e30b1f..f9e19b7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.PluralFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.PluralRules.dat
similarity index 85%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.PluralRules.dat
index 6982646..8e3375b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.PluralRules.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.RuleBasedNumberFormat.dat
similarity index 98%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.RuleBasedNumberFormat.dat
index 280dd91..8d048cf 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.RuleBasedNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.SelectFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.SelectFormat.dat
new file mode 100644
index 0000000..bbd3865
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.SelectFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.SimpleDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.SimpleDateFormat.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.SimpleDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.SimpleDateFormat.dat
index 7cbd447..16f9f19 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.SimpleDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.SimpleDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.StringPrepParseException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.StringPrepParseException.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.StringPrepParseException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.StringPrepParseException.dat
index f446389..37d3b75 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.StringPrepParseException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.StringPrepParseException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.TimeUnitFormat.dat
similarity index 70%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.TimeUnitFormat.dat
index 13fcf70..269bb8b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.TimeUnitFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.TimeZoneFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.TimeZoneFormat.dat
new file mode 100644
index 0000000..247ad4f
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.text.TimeZoneFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.AnnualTimeZoneRule.dat
similarity index 68%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.AnnualTimeZoneRule.dat
index 095de16..da8dfef 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.AnnualTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.BuddhistCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.BuddhistCalendar.dat
similarity index 73%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.BuddhistCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.BuddhistCalendar.dat
index 07b7164..eec5075 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.BuddhistCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.BuddhistCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.Calendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.Calendar.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.Calendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.Calendar.dat
index b0ae68e..5e9f542 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.Calendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.Calendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ChineseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ChineseCalendar.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ChineseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ChineseCalendar.dat
index 2c0ab4d..4d58b94 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ChineseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ChineseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.CopticCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.CopticCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.CopticCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.CopticCalendar.dat
index 66dc5f1..5fcc0eb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.CopticCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.CopticCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.Currency.dat
similarity index 81%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.Currency.dat
index 24627cc..7566c1d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.Currency.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DangiCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DangiCalendar.dat
similarity index 68%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DangiCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DangiCalendar.dat
index 31f406f..75258be 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DangiCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DangiCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DateInterval.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DateInterval.dat
new file mode 100644
index 0000000..c30bb84
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DateInterval.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DateTimeRule.dat
similarity index 63%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DateTimeRule.dat
index ed13388..7057de9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.DateTimeRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.EthiopicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.EthiopicCalendar.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.EthiopicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.EthiopicCalendar.dat
index 64f1a17..4aef85f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.EthiopicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.EthiopicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.GregorianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.GregorianCalendar.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.GregorianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.GregorianCalendar.dat
index 052912c..3463d0f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.GregorianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.GregorianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.HebrewCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.HebrewCalendar.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.HebrewCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.HebrewCalendar.dat
index a0f03b0..cb32325 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.HebrewCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.HebrewCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUCloneNotSupportedException.dat
similarity index 76%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUCloneNotSupportedException.dat
index 4dc06d2..62a7048 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUCloneNotSupportedException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUException.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUException.dat
index 7af838a..b255f34 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUUncheckedIOException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUUncheckedIOException.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUUncheckedIOException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUUncheckedIOException.dat
index 4efc77d..7c58654 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ICUUncheckedIOException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ICUUncheckedIOException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IllformedLocaleException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IllformedLocaleException.dat
similarity index 64%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IllformedLocaleException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IllformedLocaleException.dat
index 6e36035..3cd241f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IllformedLocaleException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IllformedLocaleException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IndianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IndianCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IndianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IndianCalendar.dat
index 9d24911..24f3db8 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IndianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IndianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.InitialTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.InitialTimeZoneRule.dat
new file mode 100644
index 0000000..cc19377
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.InitialTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IslamicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IslamicCalendar.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IslamicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IslamicCalendar.dat
index b5ded83..85cfde7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.IslamicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.IslamicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.JapaneseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.JapaneseCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.JapaneseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.JapaneseCalendar.dat
index c24008a..de95090 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.JapaneseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.JapaneseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.MeasureUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.MeasureUnit.dat
new file mode 100644
index 0000000..e97cd29
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.MeasureUnit.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.PersianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.PersianCalendar.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.PersianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.PersianCalendar.dat
index dff9abd..8bdf55a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.PersianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.PersianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.RuleBasedTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.RuleBasedTimeZone.dat
new file mode 100644
index 0000000..9271a99
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.RuleBasedTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.SimpleTimeZone.dat
similarity index 72%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.SimpleTimeZone.dat
index 216f9a5..71d8d1a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.SimpleTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TaiwanCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TaiwanCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TaiwanCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TaiwanCalendar.dat
index 3e79430..abbb635 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TaiwanCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TaiwanCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeArrayTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeArrayTimeZoneRule.dat
new file mode 100644
index 0000000..189e4da
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeArrayTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeUnit.dat
new file mode 100644
index 0000000..e97cd29
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeUnit.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeZone.dat
similarity index 75%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeZone.dat
index 5d69e24..04eff58 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.TimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ULocale.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ULocale.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ULocale.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ULocale.dat
index ef20832..b222926 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.ULocale.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.ULocale.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.UResourceTypeMismatchException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.UResourceTypeMismatchException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.UResourceTypeMismatchException.dat
index 0d253e1..c8b75e5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.UResourceTypeMismatchException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.VTimeZone.dat
similarity index 77%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.VTimeZone.dat
index 77e2c5b..1f69b29 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/android.icu.util.VTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.DateNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.DateNumberFormat.dat
deleted file mode 100644
index 571713e..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.DateNumberFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat
deleted file mode 100644
index be07cc8..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.JavaTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.JavaTimeZone.dat
deleted file mode 100644
index f3e44f0..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.JavaTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat
deleted file mode 100644
index b3f344e..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneGenericNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneGenericNames.dat
deleted file mode 100644
index 056868d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneGenericNames.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat
deleted file mode 100644
index 9548e9a..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat
deleted file mode 100644
index 883e9ae..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.math.BigDecimal.dat
deleted file mode 100644
index b27bcaf..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.math.BigDecimal.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormat$Field.dat
deleted file mode 100644
index 2eb95fa..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.ChineseDateFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CompactDecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CompactDecimalFormat.dat
deleted file mode 100644
index 9252bf2..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CompactDecimalFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormat$Field.dat
deleted file mode 100644
index a7cf736..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat
deleted file mode 100644
index 6bc48a9..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalInfo.dat
deleted file mode 100644
index b75cfcb..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DateIntervalInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MessageFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MessageFormat$Field.dat
deleted file mode 100644
index f30df97..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MessageFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MessageFormat.dat
deleted file mode 100644
index 5f0b1bb..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.MessageFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.NumberFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.NumberFormat$Field.dat
deleted file mode 100644
index cab3e3d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.NumberFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralRules.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralRules.dat
deleted file mode 100644
index 6982646..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralRules.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.RuleBasedNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
deleted file mode 100644
index 280dd91..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.SelectFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.SelectFormat.dat
deleted file mode 100644
index 3fd758f..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.SelectFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeZoneFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeZoneFormat.dat
deleted file mode 100644
index 6a8bffd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeZoneFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.AnnualTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
deleted file mode 100644
index 095de16..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.Currency.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.Currency.dat
deleted file mode 100644
index 24627cc..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.Currency.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DateInterval.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DateInterval.dat
deleted file mode 100644
index 71d7222..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DateInterval.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DateTimeRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DateTimeRule.dat
deleted file mode 100644
index ed13388..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.DateTimeRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.InitialTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.InitialTimeZoneRule.dat
deleted file mode 100644
index 7da9b4d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.InitialTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.MeasureUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.MeasureUnit.dat
deleted file mode 100644
index 9f01834..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.MeasureUnit.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.RuleBasedTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.RuleBasedTimeZone.dat
deleted file mode 100644
index 285f405..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.RuleBasedTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.SimpleTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.SimpleTimeZone.dat
deleted file mode 100644
index 216f9a5..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.SimpleTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat
deleted file mode 100644
index b2224bd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeUnit.dat
deleted file mode 100644
index 9f01834..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeUnit.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeZone.dat
deleted file mode 100644
index 5d69e24..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.TimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.VTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.VTimeZone.dat
deleted file mode 100644
index 77e2c5b..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.util.VTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.DateNumberFormat.dat
similarity index 80%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.DateNumberFormat.dat
index 571713e..ab393f6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.DateNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.IllegalIcuArgumentException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.IllegalIcuArgumentException.dat
new file mode 100644
index 0000000..9f92268
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.IllegalIcuArgumentException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.InvalidFormatException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.InvalidFormatException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.InvalidFormatException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.InvalidFormatException.dat
index 2a36979..c8d1cbe 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.InvalidFormatException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.InvalidFormatException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.OlsonTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.OlsonTimeZone.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.OlsonTimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.OlsonTimeZone.dat
index f54de31..5f3e726 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.OlsonTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.OlsonTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.RelativeDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.RelativeDateFormat.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.RelativeDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.RelativeDateFormat.dat
index e63d2cc..7b80517 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.RelativeDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.RelativeDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TZDBTimeZoneNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TZDBTimeZoneNames.dat
new file mode 100644
index 0000000..be04632
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TZDBTimeZoneNames.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneAdapter.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneAdapter.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneAdapter.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneAdapter.dat
index d409f0e..f53e202 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneAdapter.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneAdapter.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneGenericNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneGenericNames.dat
new file mode 100644
index 0000000..de19e07
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneGenericNames.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneNamesImpl.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneNamesImpl.dat
new file mode 100644
index 0000000..c04af70
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.TimeZoneNamesImpl.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.duration.BasicDurationFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.duration.BasicDurationFormat.dat
new file mode 100644
index 0000000..3bfb442
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.duration.BasicDurationFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.locale.LocaleSyntaxException.dat
similarity index 64%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.locale.LocaleSyntaxException.dat
index aaa3774..4ea0dd1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.impl.locale.LocaleSyntaxException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.math.BigDecimal.dat
similarity index 75%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.math.BigDecimal.dat
index b27bcaf..dd4ce52 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.math.BigDecimal.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.math.MathContext.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.math.MathContext.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.math.MathContext.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.math.MathContext.dat
index da7bc60..da71167 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.math.MathContext.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.math.MathContext.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ArabicShapingException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ArabicShapingException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ArabicShapingException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ArabicShapingException.dat
index 8c6fabd..6a1f856 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ArabicShapingException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ArabicShapingException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormat$Field.dat
new file mode 100644
index 0000000..1480893
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormat.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormat.dat
index 4ce86c0..7def438 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormatSymbols.dat
index ed66508..a507ef1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.ChineseDateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.CompactDecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.CompactDecimalFormat.dat
new file mode 100644
index 0000000..4795b26
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.CompactDecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.CurrencyPluralInfo.dat
similarity index 67%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.CurrencyPluralInfo.dat
index ad74641..56cc8f2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.CurrencyPluralInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormat$Field.dat
similarity index 91%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormat$Field.dat
index a7cf736..06b87bb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormat.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormat.dat
index d7c46a2..c098369 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormatSymbols.dat
index cfa5fbc..1e72f3c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalFormat.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalFormat.dat
index dd52b1a..b4ebb5b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalInfo$PatternInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalInfo$PatternInfo.dat
new file mode 100644
index 0000000..25ebef5
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalInfo$PatternInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalInfo.dat
similarity index 66%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalInfo.dat
index b75cfcb..59c719a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DateIntervalInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DecimalFormat.dat
similarity index 90%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DecimalFormat.dat
index 45de6ac..ee28d58 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.DecimalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DecimalFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DecimalFormatSymbols.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DecimalFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DecimalFormatSymbols.dat
index af2d6fb..79d4a0a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DecimalFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.DecimalFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MeasureFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MeasureFormat.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MeasureFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MeasureFormat.dat
index 7814c33..7887c61 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MeasureFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MeasureFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MessageFormat$Field.dat
similarity index 74%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MessageFormat$Field.dat
index f30df97..a1aca43 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MessageFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MessageFormat.dat
new file mode 100644
index 0000000..3e8d13f
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.MessageFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.NumberFormat$Field.dat
similarity index 71%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.NumberFormat$Field.dat
index cab3e3d..78dbc51 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.NumberFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.NumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.NumberFormat.dat
similarity index 76%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.NumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.NumberFormat.dat
index 9035d6b..63f16d4 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.NumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.NumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.PluralFormat.dat
similarity index 68%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.PluralFormat.dat
index 6e30b1f..f9e19b7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.PluralFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.PluralFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.PluralRules.dat
similarity index 85%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.PluralRules.dat
index 6982646..8e3375b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.PluralRules.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.RuleBasedNumberFormat.dat
similarity index 98%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.RuleBasedNumberFormat.dat
index 280dd91..8d048cf 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.RuleBasedNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.SelectFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.SelectFormat.dat
new file mode 100644
index 0000000..bbd3865
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.SelectFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.SimpleDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.SimpleDateFormat.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.SimpleDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.SimpleDateFormat.dat
index 4f548fe..9aacb07 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.SimpleDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.SimpleDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.StringPrepParseException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.StringPrepParseException.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.StringPrepParseException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.StringPrepParseException.dat
index 925ee49..9344bc5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.StringPrepParseException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.StringPrepParseException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.TimeUnitFormat.dat
similarity index 70%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.TimeUnitFormat.dat
index 13fcf70..269bb8b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.TimeUnitFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.TimeZoneFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.TimeZoneFormat.dat
new file mode 100644
index 0000000..247ad4f
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.text.TimeZoneFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.AnnualTimeZoneRule.dat
similarity index 68%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.AnnualTimeZoneRule.dat
index 095de16..da8dfef 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.AnnualTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.BuddhistCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.BuddhistCalendar.dat
similarity index 73%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.BuddhistCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.BuddhistCalendar.dat
index 8ff736b..d1941de 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.BuddhistCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.BuddhistCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.Calendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.Calendar.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.Calendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.Calendar.dat
index ed2f63c..ba8af4a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.Calendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.Calendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ChineseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ChineseCalendar.dat
similarity index 76%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ChineseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ChineseCalendar.dat
index aaa202c..167f054 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ChineseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ChineseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.CopticCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.CopticCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.CopticCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.CopticCalendar.dat
index ceac794..80991b6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.CopticCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.CopticCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.Currency.dat
similarity index 81%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.Currency.dat
index 24627cc..7566c1d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.Currency.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DangiCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DangiCalendar.dat
similarity index 68%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DangiCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DangiCalendar.dat
index bc22035..2f05773 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DangiCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DangiCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DateInterval.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DateInterval.dat
new file mode 100644
index 0000000..c30bb84
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DateInterval.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DateTimeRule.dat
similarity index 63%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DateTimeRule.dat
index ed13388..7057de9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.DateTimeRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.EthiopicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.EthiopicCalendar.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.EthiopicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.EthiopicCalendar.dat
index 9fd9fe3..f973d72 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.EthiopicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.EthiopicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.GregorianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.GregorianCalendar.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.GregorianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.GregorianCalendar.dat
index 435bef4..94bf1d6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.GregorianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.GregorianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.HebrewCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.HebrewCalendar.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.HebrewCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.HebrewCalendar.dat
index a116920..0c92d58 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.HebrewCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.HebrewCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUCloneNotSupportedException.dat
similarity index 76%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUCloneNotSupportedException.dat
index 531cf8e..920e9c6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUCloneNotSupportedException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUException.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUException.dat
index b849606..4b2157f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUUncheckedIOException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUUncheckedIOException.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUUncheckedIOException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUUncheckedIOException.dat
index d513fb9..d5541f5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUUncheckedIOException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ICUUncheckedIOException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IllformedLocaleException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IllformedLocaleException.dat
similarity index 64%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IllformedLocaleException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IllformedLocaleException.dat
index d51c022..338a1e9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IllformedLocaleException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IllformedLocaleException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IndianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IndianCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IndianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IndianCalendar.dat
index d7cb58e..a63d6e9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IndianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IndianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.InitialTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.InitialTimeZoneRule.dat
new file mode 100644
index 0000000..cc19377
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.InitialTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IslamicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IslamicCalendar.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IslamicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IslamicCalendar.dat
index 3df4589..102bfdc 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IslamicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.IslamicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.JapaneseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.JapaneseCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.JapaneseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.JapaneseCalendar.dat
index bc9ac58..267c3a5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.JapaneseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.JapaneseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.MeasureUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.MeasureUnit.dat
new file mode 100644
index 0000000..e97cd29
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.MeasureUnit.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.PersianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.PersianCalendar.dat
similarity index 81%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.PersianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.PersianCalendar.dat
index 4d7c473..32287ef 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.PersianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.PersianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.RuleBasedTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.RuleBasedTimeZone.dat
new file mode 100644
index 0000000..9271a99
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.RuleBasedTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.SimpleTimeZone.dat
similarity index 72%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.SimpleTimeZone.dat
index 216f9a5..71d8d1a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.SimpleTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TaiwanCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TaiwanCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TaiwanCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TaiwanCalendar.dat
index 6d03484..8c20892 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TaiwanCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TaiwanCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeArrayTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeArrayTimeZoneRule.dat
new file mode 100644
index 0000000..189e4da
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeArrayTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeUnit.dat
new file mode 100644
index 0000000..e97cd29
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeUnit.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeZone.dat
similarity index 75%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeZone.dat
index 5d69e24..04eff58 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.TimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ULocale.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ULocale.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ULocale.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ULocale.dat
index ef20832..b222926 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ULocale.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.ULocale.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.UResourceTypeMismatchException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.UResourceTypeMismatchException.dat
similarity index 92%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.UResourceTypeMismatchException.dat
index acbe568..a99e099 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.UResourceTypeMismatchException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.VTimeZone.dat
similarity index 77%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.VTimeZone.dat
index 77e2c5b..1f69b29 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/android.icu.util.VTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.DateNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.DateNumberFormat.dat
deleted file mode 100644
index 571713e..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.DateNumberFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat
deleted file mode 100644
index 7992773..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.JavaTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.JavaTimeZone.dat
deleted file mode 100644
index f3e44f0..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.JavaTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat
deleted file mode 100644
index b3f344e..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneGenericNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneGenericNames.dat
deleted file mode 100644
index 056868d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneGenericNames.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat
deleted file mode 100644
index 9548e9a..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat
deleted file mode 100644
index 883e9ae..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.math.BigDecimal.dat
deleted file mode 100644
index b27bcaf..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.math.BigDecimal.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormat$Field.dat
deleted file mode 100644
index 2eb95fa..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ChineseDateFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.CompactDecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.CompactDecimalFormat.dat
deleted file mode 100644
index 9252bf2..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.CompactDecimalFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.CurrencyPluralInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.CurrencyPluralInfo.dat
deleted file mode 100644
index ad74641..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.CurrencyPluralInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormat$Field.dat
deleted file mode 100644
index a7cf736..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat
deleted file mode 100644
index 6bc48a9..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalInfo.dat
deleted file mode 100644
index b75cfcb..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DateIntervalInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DecimalFormat.dat
deleted file mode 100644
index 45de6ac..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.DecimalFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MessageFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MessageFormat$Field.dat
deleted file mode 100644
index f30df97..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MessageFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MessageFormat.dat
deleted file mode 100644
index 5f0b1bb..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.MessageFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.NumberFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.NumberFormat$Field.dat
deleted file mode 100644
index cab3e3d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.NumberFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.PluralFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.PluralFormat.dat
deleted file mode 100644
index 6e30b1f..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.PluralFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.PluralRules.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.PluralRules.dat
deleted file mode 100644
index 6982646..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.PluralRules.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.RuleBasedNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
deleted file mode 100644
index 280dd91..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.SelectFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.SelectFormat.dat
deleted file mode 100644
index 3fd758f..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.SelectFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.TimeUnitFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.TimeUnitFormat.dat
deleted file mode 100644
index 13fcf70..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.TimeUnitFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.TimeZoneFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.TimeZoneFormat.dat
deleted file mode 100644
index 6a8bffd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.TimeZoneFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.AnnualTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
deleted file mode 100644
index 095de16..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.Currency.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.Currency.dat
deleted file mode 100644
index 24627cc..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.Currency.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DateInterval.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DateInterval.dat
deleted file mode 100644
index 71d7222..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DateInterval.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DateTimeRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DateTimeRule.dat
deleted file mode 100644
index ed13388..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.DateTimeRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.InitialTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.InitialTimeZoneRule.dat
deleted file mode 100644
index 7da9b4d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.InitialTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.MeasureUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.MeasureUnit.dat
deleted file mode 100644
index 9f01834..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.MeasureUnit.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.RuleBasedTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.RuleBasedTimeZone.dat
deleted file mode 100644
index 285f405..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.RuleBasedTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.SimpleTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.SimpleTimeZone.dat
deleted file mode 100644
index 216f9a5..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.SimpleTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat
deleted file mode 100644
index b2224bd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeUnit.dat
deleted file mode 100644
index 9f01834..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeUnit.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeZone.dat
deleted file mode 100644
index 5d69e24..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.TimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.VTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.VTimeZone.dat
deleted file mode 100644
index 77e2c5b..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.VTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.DateNumberFormat.dat
similarity index 80%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.DateNumberFormat.dat
index 571713e..ab393f6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.impl.DateNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.DateNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.IllegalIcuArgumentException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.IllegalIcuArgumentException.dat
new file mode 100644
index 0000000..9f92268
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.IllegalIcuArgumentException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.InvalidFormatException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.InvalidFormatException.dat
similarity index 92%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.InvalidFormatException.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.InvalidFormatException.dat
index 2a36979..c8d1cbe 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.InvalidFormatException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.InvalidFormatException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.OlsonTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.OlsonTimeZone.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.OlsonTimeZone.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.OlsonTimeZone.dat
index e639773..1644d97 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.OlsonTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.OlsonTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.RelativeDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.RelativeDateFormat.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.RelativeDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.RelativeDateFormat.dat
index d989501..eb1a5ac 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.RelativeDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.RelativeDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TZDBTimeZoneNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TZDBTimeZoneNames.dat
new file mode 100644
index 0000000..be04632
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TZDBTimeZoneNames.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneAdapter.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneAdapter.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneAdapter.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneAdapter.dat
index b28af99..561c870 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneAdapter.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneAdapter.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneGenericNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneGenericNames.dat
new file mode 100644
index 0000000..de19e07
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneGenericNames.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneNamesImpl.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneNamesImpl.dat
new file mode 100644
index 0000000..c04af70
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.TimeZoneNamesImpl.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.duration.BasicDurationFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.duration.BasicDurationFormat.dat
new file mode 100644
index 0000000..3bfb442
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.duration.BasicDurationFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.locale.LocaleSyntaxException.dat
similarity index 64%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.locale.LocaleSyntaxException.dat
index aaa3774..4ea0dd1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.impl.locale.LocaleSyntaxException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.math.BigDecimal.dat
similarity index 75%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.math.BigDecimal.dat
index b27bcaf..dd4ce52 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_3.6/com.ibm.icu.math.BigDecimal.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.math.BigDecimal.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.math.MathContext.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.math.MathContext.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.math.MathContext.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.math.MathContext.dat
index da7bc60..da71167 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.math.MathContext.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.math.MathContext.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ArabicShapingException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ArabicShapingException.dat
similarity index 92%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ArabicShapingException.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ArabicShapingException.dat
index 8c6fabd..6a1f856 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.ArabicShapingException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ArabicShapingException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormat$Field.dat
new file mode 100644
index 0000000..1480893
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormat.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormat.dat
index 8161488..b00cfa4 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormatSymbols.dat
index ecaf871..bb08616 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.ChineseDateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.CompactDecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.CompactDecimalFormat.dat
new file mode 100644
index 0000000..4795b26
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.CompactDecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.CurrencyPluralInfo.dat
similarity index 67%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.CurrencyPluralInfo.dat
index ad74641..56cc8f2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.CurrencyPluralInfo.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.CurrencyPluralInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormat$Field.dat
similarity index 91%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormat$Field.dat
index a7cf736..06b87bb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormat.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormat.dat
index cc7f431..ae89494 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormatSymbols.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormatSymbols.dat
index ecdad79..c37aeed 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalFormat.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalFormat.dat
index a21cd88..56b683c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalInfo$PatternInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalInfo$PatternInfo.dat
new file mode 100644
index 0000000..25ebef5
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalInfo$PatternInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalInfo.dat
similarity index 66%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalInfo.dat
index b75cfcb..59c719a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.DateIntervalInfo.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DateIntervalInfo.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DecimalFormat.dat
similarity index 90%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DecimalFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DecimalFormat.dat
index edbb58e..64ba0b7 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DecimalFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DecimalFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DecimalFormatSymbols.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DecimalFormatSymbols.dat
similarity index 95%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DecimalFormatSymbols.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DecimalFormatSymbols.dat
index 1491b56..717bb22 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DecimalFormatSymbols.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.DecimalFormatSymbols.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MeasureFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MeasureFormat.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MeasureFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MeasureFormat.dat
index a83fac3..4f5a9ed 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MeasureFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MeasureFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MessageFormat$Field.dat
similarity index 74%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MessageFormat$Field.dat
index f30df97..a1aca43 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.MessageFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MessageFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MessageFormat.dat
new file mode 100644
index 0000000..3e8d13f
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.MessageFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.NumberFormat$Field.dat
similarity index 71%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.NumberFormat$Field.dat
index cab3e3d..78dbc51 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.NumberFormat$Field.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.NumberFormat$Field.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.NumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.NumberFormat.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.NumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.NumberFormat.dat
index ecbdbaa..4a31dc9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.NumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.NumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.PluralFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.PluralFormat.dat
similarity index 69%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.PluralFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.PluralFormat.dat
index 9311a78..5313c81 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.PluralFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.PluralFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.PluralRules.dat
similarity index 85%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.PluralRules.dat
index 6982646..8e3375b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.text.PluralRules.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.PluralRules.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.RuleBasedNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.RuleBasedNumberFormat.dat
similarity index 98%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.RuleBasedNumberFormat.dat
index 205cff4..7fd77d2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.RuleBasedNumberFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.RuleBasedNumberFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.SelectFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.SelectFormat.dat
new file mode 100644
index 0000000..bbd3865
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.SelectFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.SimpleDateFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.SimpleDateFormat.dat
similarity index 97%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.SimpleDateFormat.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.SimpleDateFormat.dat
index e7d32d7..80cd3fa 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.SimpleDateFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.SimpleDateFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.StringPrepParseException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.StringPrepParseException.dat
similarity index 95%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.StringPrepParseException.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.StringPrepParseException.dat
index 925ee49..9344bc5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.text.StringPrepParseException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.StringPrepParseException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.TimeUnitFormat.dat
similarity index 70%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.TimeUnitFormat.dat
index 13fcf70..269bb8b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_54.1/com.ibm.icu.text.TimeUnitFormat.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.TimeUnitFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.TimeZoneFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.TimeZoneFormat.dat
new file mode 100644
index 0000000..247ad4f
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.text.TimeZoneFormat.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.AnnualTimeZoneRule.dat
similarity index 68%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.AnnualTimeZoneRule.dat
index 095de16..da8dfef 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.AnnualTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.BuddhistCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.BuddhistCalendar.dat
similarity index 73%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.BuddhistCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.BuddhistCalendar.dat
index cd0a599..445d218 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.BuddhistCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.BuddhistCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.Calendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.Calendar.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.Calendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.Calendar.dat
index a2ccc26..51dd37d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.Calendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.Calendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ChineseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ChineseCalendar.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ChineseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ChineseCalendar.dat
index fe4e26e..9b52b9c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ChineseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ChineseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.CopticCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.CopticCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.CopticCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.CopticCalendar.dat
index 83fa46a..6699f07 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.CopticCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.CopticCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.Currency.dat
similarity index 81%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.Currency.dat
index 24627cc..7566c1d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.Currency.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.Currency.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DangiCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DangiCalendar.dat
similarity index 68%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DangiCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DangiCalendar.dat
index d45ec90..7132ff8 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DangiCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DangiCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DateInterval.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DateInterval.dat
new file mode 100644
index 0000000..c30bb84
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DateInterval.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DateTimeRule.dat
similarity index 63%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DateTimeRule.dat
index ed13388..7057de9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.DateTimeRule.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.DateTimeRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.EthiopicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.EthiopicCalendar.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.EthiopicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.EthiopicCalendar.dat
index f913f40..c3d2f86 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.EthiopicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.EthiopicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.GregorianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.GregorianCalendar.dat
similarity index 78%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.GregorianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.GregorianCalendar.dat
index bd76132..26b979d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.GregorianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.GregorianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.HebrewCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.HebrewCalendar.dat
similarity index 77%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.HebrewCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.HebrewCalendar.dat
index be2a09f..461c09d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.HebrewCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.HebrewCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUCloneNotSupportedException.dat
similarity index 76%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUCloneNotSupportedException.dat
index 531cf8e..920e9c6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUCloneNotSupportedException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUException.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUException.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUException.dat
index b849606..4b2157f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUUncheckedIOException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUUncheckedIOException.dat
similarity index 80%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUUncheckedIOException.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUUncheckedIOException.dat
index d513fb9..d5541f5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.ICUUncheckedIOException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ICUUncheckedIOException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IllformedLocaleException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IllformedLocaleException.dat
similarity index 64%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IllformedLocaleException.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IllformedLocaleException.dat
index d51c022..338a1e9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.IllformedLocaleException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IllformedLocaleException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IndianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IndianCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IndianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IndianCalendar.dat
index 9cb1367..1046c12 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IndianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IndianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.InitialTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.InitialTimeZoneRule.dat
new file mode 100644
index 0000000..cc19377
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.InitialTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IslamicCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IslamicCalendar.dat
similarity index 79%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IslamicCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IslamicCalendar.dat
index 2ad20df..3074ebd 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IslamicCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.IslamicCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.JapaneseCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.JapaneseCalendar.dat
similarity index 75%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.JapaneseCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.JapaneseCalendar.dat
index 315766c..73367a9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.JapaneseCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.JapaneseCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.MeasureUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.MeasureUnit.dat
new file mode 100644
index 0000000..e97cd29
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.MeasureUnit.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.PersianCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.PersianCalendar.dat
similarity index 80%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.PersianCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.PersianCalendar.dat
index c24c050..61b2c37 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.PersianCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.PersianCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.RuleBasedTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.RuleBasedTimeZone.dat
new file mode 100644
index 0000000..9271a99
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.RuleBasedTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.SimpleTimeZone.dat
similarity index 72%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.SimpleTimeZone.dat
index 216f9a5..71d8d1a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.SimpleTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.SimpleTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TaiwanCalendar.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TaiwanCalendar.dat
similarity index 74%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TaiwanCalendar.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TaiwanCalendar.dat
index 2c2c3d3..32f448e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TaiwanCalendar.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TaiwanCalendar.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeArrayTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeArrayTimeZoneRule.dat
new file mode 100644
index 0000000..189e4da
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeArrayTimeZoneRule.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeUnit.dat
new file mode 100644
index 0000000..e97cd29
--- /dev/null
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeUnit.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeZone.dat
similarity index 75%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeZone.dat
index 5d69e24..04eff58 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.TimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.TimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ULocale.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ULocale.dat
similarity index 72%
rename from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ULocale.dat
rename to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ULocale.dat
index ef20832..b222926 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ULocale.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.ULocale.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.UResourceTypeMismatchException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.UResourceTypeMismatchException.dat
similarity index 92%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.UResourceTypeMismatchException.dat
index acbe568..a99e099 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_55.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.UResourceTypeMismatchException.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.VTimeZone.dat
similarity index 77%
copy from android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat
copy to android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.VTimeZone.dat
index 77e2c5b..1f69b29 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_53.1/com.ibm.icu.util.VTimeZone.dat
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/android.icu.util.VTimeZone.dat
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.DateNumberFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.DateNumberFormat.dat
deleted file mode 100644
index 571713e..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.DateNumberFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat
deleted file mode 100644
index 7992773..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.IllegalIcuArgumentException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.InvalidFormatException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.InvalidFormatException.dat
deleted file mode 100644
index 2a36979..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.InvalidFormatException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.JavaTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.JavaTimeZone.dat
deleted file mode 100644
index f3e44f0..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.JavaTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat
deleted file mode 100644
index b3f344e..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TZDBTimeZoneNames.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneGenericNames.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneGenericNames.dat
deleted file mode 100644
index 056868d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneGenericNames.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat
deleted file mode 100644
index 9548e9a..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.TimeZoneNamesImpl.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat
deleted file mode 100644
index 883e9ae..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.duration.BasicDurationFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
deleted file mode 100644
index aaa3774..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.impl.locale.LocaleSyntaxException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.math.BigDecimal.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.math.BigDecimal.dat
deleted file mode 100644
index b27bcaf..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.math.BigDecimal.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ArabicShapingException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ArabicShapingException.dat
deleted file mode 100644
index 8c6fabd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ArabicShapingException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormat$Field.dat
deleted file mode 100644
index 2eb95fa..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.ChineseDateFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.CompactDecimalFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.CompactDecimalFormat.dat
deleted file mode 100644
index 9252bf2..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.CompactDecimalFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.CurrencyPluralInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.CurrencyPluralInfo.dat
deleted file mode 100644
index ad74641..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.CurrencyPluralInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormat$Field.dat
deleted file mode 100644
index a7cf736..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat
deleted file mode 100644
index 6bc48a9..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalInfo$PatternInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalInfo.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalInfo.dat
deleted file mode 100644
index b75cfcb..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.DateIntervalInfo.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MessageFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MessageFormat$Field.dat
deleted file mode 100644
index f30df97..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MessageFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MessageFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MessageFormat.dat
deleted file mode 100644
index 5f0b1bb..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.MessageFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.NumberFormat$Field.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.NumberFormat$Field.dat
deleted file mode 100644
index cab3e3d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.NumberFormat$Field.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.PluralRules.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.PluralRules.dat
deleted file mode 100644
index 6982646..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.PluralRules.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.SelectFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.SelectFormat.dat
deleted file mode 100644
index 3fd758f..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.SelectFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.StringPrepParseException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.StringPrepParseException.dat
deleted file mode 100644
index 925ee49..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.StringPrepParseException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.TimeUnitFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.TimeUnitFormat.dat
deleted file mode 100644
index 13fcf70..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.TimeUnitFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.TimeZoneFormat.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.TimeZoneFormat.dat
deleted file mode 100644
index 6a8bffd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.text.TimeZoneFormat.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.AnnualTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
deleted file mode 100644
index 095de16..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.AnnualTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.Currency.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.Currency.dat
deleted file mode 100644
index 24627cc..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.Currency.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DateInterval.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DateInterval.dat
deleted file mode 100644
index 71d7222..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DateInterval.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DateTimeRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DateTimeRule.dat
deleted file mode 100644
index ed13388..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.DateTimeRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
deleted file mode 100644
index 531cf8e..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUCloneNotSupportedException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUUncheckedIOException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUUncheckedIOException.dat
deleted file mode 100644
index d513fb9..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.ICUUncheckedIOException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IllformedLocaleException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IllformedLocaleException.dat
deleted file mode 100644
index d51c022..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.IllformedLocaleException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.InitialTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.InitialTimeZoneRule.dat
deleted file mode 100644
index 7da9b4d..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.InitialTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.MeasureUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.MeasureUnit.dat
deleted file mode 100644
index 9f01834..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.MeasureUnit.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.RuleBasedTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.RuleBasedTimeZone.dat
deleted file mode 100644
index 285f405..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.RuleBasedTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.SimpleTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.SimpleTimeZone.dat
deleted file mode 100644
index 216f9a5..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.SimpleTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat
deleted file mode 100644
index b2224bd..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeArrayTimeZoneRule.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeUnit.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeUnit.dat
deleted file mode 100644
index 9f01834..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeUnit.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeZone.dat
deleted file mode 100644
index 5d69e24..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.TimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.UResourceTypeMismatchException.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
deleted file mode 100644
index acbe568..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.UResourceTypeMismatchException.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.VTimeZone.dat b/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.VTimeZone.dat
deleted file mode 100644
index 77e2c5b..0000000
--- a/android_icu4j/src/main/tests/android/icu/dev/test/serializable/data/ICU_56.1/com.ibm.icu.util.VTimeZone.dat
+++ /dev/null
Binary files differ
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/shaping/ArabicShapingRegTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/shaping/ArabicShapingRegTest.java
index f0d8a77..630867f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/shaping/ArabicShapingRegTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/shaping/ArabicShapingRegTest.java
@@ -13,10 +13,13 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.ArabicShaping;
 import android.icu.text.ArabicShapingException;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Regression test for Arabic shaping.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class ArabicShapingRegTest extends TestFmwk {
 
     /* constants copied from ArabicShaping for convenience */
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/IDNAConformanceTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/IDNAConformanceTest.java
index cba4fbe..a613341 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/IDNAConformanceTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/IDNAConformanceTest.java
@@ -23,11 +23,14 @@
 import android.icu.text.IDNA;
 import android.icu.text.StringPrepParseException;
 import android.icu.text.UTF16;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author limaoyu
  * 
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class IDNAConformanceTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestAll.java
index 896ed2f..c97bdd9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestAll.java
@@ -8,6 +8,8 @@
 package android.icu.dev.test.stringprep;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * @author ram
@@ -15,6 +17,7 @@
  * To change the template for this generated type comment go to
  * Window>Preferences>Java>Code Generation>Code and Comments
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestIDNA.java b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestIDNA.java
index 875b311..28ab13e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestIDNA.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestIDNA.java
@@ -16,10 +16,13 @@
 import android.icu.text.StringPrepParseException;
 import android.icu.text.UCharacterIterator;
 import android.icu.text.UTF16;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author ram
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TestIDNA extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new TestIDNA().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestIDNARef.java b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestIDNARef.java
index 4edc1e1..b1dff49 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestIDNARef.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestIDNARef.java
@@ -10,6 +10,8 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.StringPrepParseException;
 import android.icu.text.UCharacterIterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author ram
@@ -17,6 +19,7 @@
  * To change the template for this generated type comment go to
  * Window>Preferences>Java>Code Generation>Code and Comments
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TestIDNARef extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new TestIDNARef().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestStringPrep.java b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestStringPrep.java
index 6a0bd8a..abd013b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestStringPrep.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestStringPrep.java
@@ -12,11 +12,14 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.StringPrep;
 import android.icu.text.StringPrepParseException;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author ram
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TestStringPrep extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new TestStringPrep().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestStringPrepProfiles.java b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestStringPrepProfiles.java
index aab5054..71cfbd6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestStringPrepProfiles.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/stringprep/TestStringPrepProfiles.java
@@ -10,11 +10,14 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.text.StringPrep;
 import android.icu.text.StringPrepParseException;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author Michael Ow
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TestStringPrepProfiles extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new TestStringPrepProfiles().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/text/SpoofCheckerTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/text/SpoofCheckerTest.java
index 89c746b..683bc69 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/text/SpoofCheckerTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/text/SpoofCheckerTest.java
@@ -35,7 +35,10 @@
 import android.icu.text.SpoofChecker.RestrictionLevel;
 import android.icu.text.UnicodeSet;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class SpoofCheckerTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/text/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/text/TestAll.java
index c8fa1e5..49ce88d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/text/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/text/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.text;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run text tests.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) throws Exception {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TestAll.java
index c417f5f..96ba1ac 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TestAll.java
@@ -10,10 +10,13 @@
 package android.icu.dev.test.timescale;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run time scale tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
 
     public TestAll() {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleAPITest.java b/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleAPITest.java
index 6125cae..574ebd3 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleAPITest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleAPITest.java
@@ -12,10 +12,13 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.math.BigDecimal;
 import android.icu.util.UniversalTimeScale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test UniversalTimeScale API
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeScaleAPITest extends TestFmwk
 {
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleDataTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleDataTest.java
index 7ec1d95..5c739ab 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleDataTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleDataTest.java
@@ -17,6 +17,8 @@
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
 import android.icu.util.UniversalTimeScale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author Owner
@@ -24,6 +26,7 @@
  * TODO To change the template for this generated type comment go to
  * Window - Preferences - Java - Code Style - Code Templates
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeScaleDataTest extends TestFmwk
 {
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleMonkeyTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleMonkeyTest.java
index b326672..98d421b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleMonkeyTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timescale/TimeScaleMonkeyTest.java
@@ -14,12 +14,15 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.math.BigDecimal;
 import android.icu.util.UniversalTimeScale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * This class tests the UniversalTimeScale class by
  * generating ramdon values in range and making sure
  * that they round-trip correctly.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeScaleMonkeyTest extends TestFmwk
 {
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TestAll.java
index 621cffb..2f7d26c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.timezone;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) throws Exception {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneAliasTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneAliasTest.java
index 0336f12..38ec523 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneAliasTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneAliasTest.java
@@ -24,6 +24,8 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.util.TimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
@@ -31,6 +33,7 @@
  * @author Davis
  * 
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeZoneAliasTest extends TestFmwk {
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneBoundaryTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneBoundaryTest.java
index eeb8836..0710c0a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneBoundaryTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneBoundaryTest.java
@@ -15,11 +15,14 @@
 import android.icu.util.Calendar;
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * A test which discovers the boundaries of DST programmatically and verifies
  * that they are correct.
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeZoneBoundaryTest extends TestFmwk
 {
     static final int ONE_SECOND = 1000;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneOffsetLocalTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneOffsetLocalTest.java
index c923ab8..3263aef 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneOffsetLocalTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneOffsetLocalTest.java
@@ -20,10 +20,13 @@
 import android.icu.util.RuleBasedTimeZone;
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Testing getOffset APIs using local time
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeZoneOffsetLocalTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneRegression.java b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneRegression.java
index d2f9245..27b9935 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneRegression.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneRegression.java
@@ -30,7 +30,10 @@
 import android.icu.util.SimpleTimeZone;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeZoneRegression extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneRuleTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneRuleTest.java
index cf68b1b..06e1b8c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneRuleTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneRuleTest.java
@@ -31,10 +31,13 @@
 import android.icu.util.TimeZoneTransition;
 import android.icu.util.ULocale;
 import android.icu.util.VTimeZone;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for TimeZoneRule and RuleBasedTimeZone
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeZoneRuleTest extends TestFmwk {
 
     private static final int HOUR = 60 * 60 * 1000;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneTest.java
index 4c4c6e0..dcfe21e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/timezone/TimeZoneTest.java
@@ -39,6 +39,8 @@
 import android.icu.util.UResourceBundle;
 import android.icu.util.VTimeZone;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test 1.22 99/09/21
@@ -46,6 +48,7 @@
  * @summary test TimeZone
  * @build TimeZoneTest
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TimeZoneTest extends TestFmwk
 {
     static final int millisPerHour = 3600000;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/AnyScriptTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/AnyScriptTest.java
index 1e8984f..1e7192b 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/AnyScriptTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/AnyScriptTest.java
@@ -14,11 +14,14 @@
 import android.icu.text.UnicodeSet;
 import android.icu.text.UnicodeSetIterator;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author markdavis
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class AnyScriptTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new AnyScriptTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/CompoundTransliteratorTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/CompoundTransliteratorTest.java
index 12f0300..0152e5f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/CompoundTransliteratorTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/CompoundTransliteratorTest.java
@@ -10,6 +10,8 @@
 import android.icu.impl.Utility;
 import android.icu.text.ReplaceableString;
 import android.icu.text.Transliterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 
@@ -17,6 +19,7 @@
  * @test
  * @summary General test of CompoundTransliterator
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class CompoundTransliteratorTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/ErrorTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/ErrorTest.java
index 38b97ea..3f6ccb6 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/ErrorTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/ErrorTest.java
@@ -10,11 +10,14 @@
 import android.icu.text.ReplaceableString;
 import android.icu.text.Transliterator;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary Error condition test of Transliterator
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class ErrorTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/JamoTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/JamoTest.java
index 74bc82c..8035fae 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/JamoTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/JamoTest.java
@@ -12,11 +12,14 @@
 
 import android.icu.impl.Utility;
 import android.icu.text.Transliterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary Test the Latin-Jamo transliterator
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class JamoTest extends TransliteratorTest {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/PrettyPrinterTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/PrettyPrinterTest.java
index 7a23608..2579edc 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/PrettyPrinterTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/PrettyPrinterTest.java
@@ -13,7 +13,10 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.dev.util.PrettyPrinter;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class PrettyPrinterTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new PrettyPrinterTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/RegexUtilitiesTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/RegexUtilitiesTest.java
index 5c332bd..896b635 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/RegexUtilitiesTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/RegexUtilitiesTest.java
@@ -20,10 +20,13 @@
 import android.icu.text.Transliterator;
 import android.icu.text.UTF16;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author markdavis
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class RegexUtilitiesTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/ReplaceableTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/ReplaceableTest.java
index 1f22d4c..a886a9e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/ReplaceableTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/ReplaceableTest.java
@@ -12,11 +12,14 @@
 import android.icu.text.Replaceable;
 import android.icu.text.ReplaceableString;
 import android.icu.text.Transliterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary Round trip test of Transliterator
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class ReplaceableTest extends TestFmwk {
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/RoundTripTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/RoundTripTest.java
index 2e92777..419d3f1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/RoundTripTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/RoundTripTest.java
@@ -29,11 +29,14 @@
 import android.icu.text.UnicodeSetIterator;
 import android.icu.util.LocaleData;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary Round trip test of Transliterator
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class RoundTripTest extends TestFmwk {
 
     //TODO - revisit test cases referencing FIX_ME
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/TestAll.java
index bf6daa1..af82e9c 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/TestAll.java
@@ -8,11 +8,14 @@
 package android.icu.dev.test.translit;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
 
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/TestUnicodeProperty.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/TestUnicodeProperty.java
index 3cd7b7e..fa4f8e0 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/TestUnicodeProperty.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/TestUnicodeProperty.java
@@ -15,11 +15,14 @@
 import android.icu.dev.util.UnicodeProperty.Factory;
 import android.icu.dev.util.UnicodePropertySymbolTable;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author markdavis
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TestUnicodeProperty extends TestFmwk{
     public static void main(String[] args) {
         new TestUnicodeProperty().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/ThreadTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/ThreadTest.java
index ed306e3..698f108 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/ThreadTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/ThreadTest.java
@@ -10,10 +10,13 @@
 import java.util.ArrayList;
 
 import android.icu.text.Transliterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 // Test for ICU Ticket #7201.  With threading bugs in RuleBasedTransliterator, this
 //   test would reliably crash.
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ThreadTest extends TransliteratorTest {
     public static void main(String[] args) throws Exception {
         new ThreadTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/TransliteratorTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/TransliteratorTest.java
index 96116c2..ce54b73 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/TransliteratorTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/TransliteratorTest.java
@@ -36,6 +36,8 @@
 import android.icu.text.UnicodeSetIterator;
 import android.icu.util.CaseInsensitiveString;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /***********************************************************************
 
@@ -86,6 +88,7 @@
  * @test
  * @summary General test of Transliterator
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class TransliteratorTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/translit/UnicodeMapTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/translit/UnicodeMapTest.java
index 2e0a922..798066d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/translit/UnicodeMapTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/translit/UnicodeMapTest.java
@@ -24,11 +24,14 @@
 import android.icu.impl.Utility;
 import android.icu.text.UTF16;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary General test of UnicodeSet
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class UnicodeMapTest extends TestFmwk {
 
     static final int MODIFY_TEST_LIMIT = 32;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/BytesTrieTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/BytesTrieTest.java
index eeef999..780e8d9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/BytesTrieTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/BytesTrieTest.java
@@ -18,7 +18,10 @@
 import android.icu.util.BytesTrie;
 import android.icu.util.BytesTrieBuilder;
 import android.icu.util.StringTrieBuilder;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class BytesTrieTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new BytesTrieTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/CharsTrieTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/CharsTrieTest.java
index 98ec7b9..38bb73e 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/CharsTrieTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/CharsTrieTest.java
@@ -19,7 +19,10 @@
 import android.icu.util.CharsTrie;
 import android.icu.util.CharsTrieBuilder;
 import android.icu.util.StringTrieBuilder;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class CharsTrieTest extends TestFmwk {
     public static void main(String[] args) throws Exception {
         new CharsTrieTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/CompactArrayTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/CompactArrayTest.java
index 157c6f1..a2447eb 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/CompactArrayTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/CompactArrayTest.java
@@ -11,10 +11,13 @@
 import android.icu.impl.Utility;
 import android.icu.util.CompactByteArray;
 import android.icu.util.CompactCharArray;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @since release 2.2
  */
+@RunWith(IcuTestFmwkRunner.class)
 public final class CompactArrayTest extends TestFmwk 
 { 
     public static void main(String[] args) throws Exception
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/CurrencyTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/CurrencyTest.java
index fd1d64c..de7c12a 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/CurrencyTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/CurrencyTest.java
@@ -34,11 +34,14 @@
 import android.icu.util.GregorianCalendar;
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary General test of Currency
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class CurrencyTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/DebugUtilitiesTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/DebugUtilitiesTest.java
index 4d05f8e..981c828 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/DebugUtilitiesTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/DebugUtilitiesTest.java
@@ -8,11 +8,14 @@
 package android.icu.dev.test.util;
 
 import android.icu.dev.test.TestFmwk;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author srl
  *
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class DebugUtilitiesTest extends TestFmwk {
 
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/DisplayNameTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/DisplayNameTest.java
index 9cb0e19..e6e8a00 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/DisplayNameTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/DisplayNameTest.java
@@ -25,7 +25,10 @@
 import android.icu.util.TimeZone;
 import android.icu.util.ULocale;
 import android.icu.util.UResourceBundle;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class DisplayNameTest extends TestFmwk {
     static final boolean SHOW_ALL = false;
     
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/GenderInfoTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/GenderInfoTest.java
index 1766f93..fcb15fc 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/GenderInfoTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/GenderInfoTest.java
@@ -14,7 +14,10 @@
 import android.icu.util.GenderInfo;
 import android.icu.util.GenderInfo.Gender;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class GenderInfoTest extends TestFmwk {
     public static void main(String[] args) {
         new GenderInfoTest().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUBinaryTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUBinaryTest.java
index b53817a..caedb3d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUBinaryTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUBinaryTest.java
@@ -13,6 +13,8 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.impl.ICUBinary;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
 * Testing class for Trie. Tests here will be simple, since both CharTrie and 
@@ -21,6 +23,7 @@
 * @author Syn Wee Quek
 * @since release 2.1 Jan 01 2002
 */
+@RunWith(IcuTestFmwkRunner.class)
 public final class ICUBinaryTest extends TestFmwk 
 { 
     // constructor ---------------------------------------------------
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUResourceBundleCollationTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUResourceBundleCollationTest.java
index 2a04540..d5daac1 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUResourceBundleCollationTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUResourceBundleCollationTest.java
@@ -14,8 +14,11 @@
 import android.icu.text.Collator;
 import android.icu.util.ULocale;
 import android.icu.util.UResourceBundle;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
+@RunWith(IcuTestFmwkRunner.class)
 public final class ICUResourceBundleCollationTest extends TestFmwk {
     private static final String COLLATION_RESNAME = "collations";
     private static final String COLLATION_KEYWORD = "collation";
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUResourceBundleTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUResourceBundleTest.java
index 8742f4c..5592522 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUResourceBundleTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUResourceBundleTest.java
@@ -32,7 +32,10 @@
 import android.icu.util.UResourceBundle;
 import android.icu.util.UResourceBundleIterator;
 import android.icu.util.UResourceTypeMismatchException;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public final class ICUResourceBundleTest extends TestFmwk {
     private static final ClassLoader testLoader = ICUResourceBundleTest.class.getClassLoader();
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUServiceTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUServiceTest.java
index 637a1f7..084fc00 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUServiceTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUServiceTest.java
@@ -36,7 +36,10 @@
 import android.icu.impl.ICUService.SimpleFactory;
 import android.icu.impl.LocaleUtility;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ICUServiceTest extends TestFmwk
 {
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUServiceThreadTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUServiceThreadTest.java
index ee102e8..c07d78f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUServiceThreadTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/ICUServiceThreadTest.java
@@ -30,7 +30,10 @@
 import android.icu.impl.ICUService.Factory;
 import android.icu.impl.ICUService.SimpleFactory;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ICUServiceThreadTest extends TestFmwk
 {
     private static final boolean PRINTSTATS = false;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleAliasCollationTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleAliasCollationTest.java
index 1d1bb06..e989f31 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleAliasCollationTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleAliasCollationTest.java
@@ -12,7 +12,10 @@
 
 import android.icu.text.Collator;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class LocaleAliasCollationTest extends android.icu.dev.test.TestFmwk {
     private static final ULocale[][] _LOCALES = {
             {new ULocale("en", "RH"), new ULocale("en", "ZW")},
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleAliasTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleAliasTest.java
index 0de2640..0ec47e9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleAliasTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleAliasTest.java
@@ -20,7 +20,10 @@
 import android.icu.util.Calendar;
 import android.icu.util.ULocale;
 import android.icu.util.UResourceBundle;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class LocaleAliasTest extends android.icu.dev.test.TestFmwk {
     private static final ULocale[][] _LOCALES = {
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleBuilderTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleBuilderTest.java
index e25df37..6c86008 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleBuilderTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleBuilderTest.java
@@ -13,10 +13,13 @@
 import android.icu.util.IllformedLocaleException;
 import android.icu.util.ULocale;
 import android.icu.util.ULocale.Builder;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test cases for ULocale.LocaleBuilder
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class LocaleBuilderTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleDataTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleDataTest.java
index 1b7c898..3a1b2aa 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleDataTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleDataTest.java
@@ -18,6 +18,8 @@
 import android.icu.util.ICUException;
 import android.icu.util.LocaleData;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @author ram
@@ -25,6 +27,7 @@
  * To change the template for this generated type comment go to
  * Window>Preferences>Java>Code Generation>Code and Comments
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class LocaleDataTest extends TestFmwk{
 
     public static void main(String[] args) throws Exception{
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleMatcherTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleMatcherTest.java
index f7999b9..72dc624 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleMatcherTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocaleMatcherTest.java
@@ -16,12 +16,15 @@
 import android.icu.util.LocaleMatcher.LanguageMatcherData;
 import android.icu.util.LocalePriorityList;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test the LocaleMatcher.
  * 
  * @author markdavis
  */
+@RunWith(IcuTestFmwkRunner.class)
 @SuppressWarnings("deprecation")
 public class LocaleMatcherTest extends TestFmwk {
 
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocalePriorityListTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocalePriorityListTest.java
index 10e3eda..127d20f 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/LocalePriorityListTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/LocalePriorityListTest.java
@@ -11,11 +11,14 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.util.LocalePriorityList;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * Test the LanguagePriorityList
  * @author markdavis@google.com
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class LocalePriorityListTest extends TestFmwk {
     
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/RegionTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/RegionTest.java
index c3fcdf9..4fdd62d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/RegionTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/RegionTest.java
@@ -18,12 +18,15 @@
 import android.icu.dev.test.TestFmwk;
 import android.icu.util.Region;
 import android.icu.util.Region.RegionType;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary General test of Regions
  */
 
+@RunWith(IcuTestFmwkRunner.class)
 public class RegionTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/SimplePatternFormatterTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/SimplePatternFormatterTest.java
index 08d2b11..004df78 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/SimplePatternFormatterTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/SimplePatternFormatterTest.java
@@ -11,7 +11,10 @@
 import android.icu.impl.SimplePatternFormatter;
 import android.icu.text.MessageFormat;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class SimplePatternFormatterTest extends TestFmwk {
 
     /**
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/StringTokenizerTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/StringTokenizerTest.java
index ba7ad18..f652bf4 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/StringTokenizerTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/StringTokenizerTest.java
@@ -13,12 +13,15 @@
 import android.icu.text.ReplaceableString;
 import android.icu.text.UnicodeSet;
 import android.icu.util.StringTokenizer;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
 * Testing class for StringTokenizer class
 * @author Syn Wee Quek
 * @since oct 26 2002
 */
+@RunWith(IcuTestFmwkRunner.class)
 public final class StringTokenizerTest extends TestFmwk
 { 
       // constructor ===================================================
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/TestAll.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/TestAll.java
index 5b8e9e5..c9737a9 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/TestAll.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/TestAll.java
@@ -8,10 +8,13 @@
 package android.icu.dev.test.util;
 
 import android.icu.dev.test.TestFmwk.TestGroup;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestGroupRunner;
 
 /**
  * Top level test used to run all other tests as a batch.
  */
+@RunWith(IcuTestGroupRunner.class)
 public class TestAll extends TestGroup {
     public static void main(String[] args) throws Exception {
         new TestAll().run(args);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/TestUtilities.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/TestUtilities.java
index c1cbe9f..58051d5 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/TestUtilities.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/TestUtilities.java
@@ -32,7 +32,10 @@
 import android.icu.lang.UCharacter;
 import android.icu.lang.UProperty;
 import android.icu.text.UnicodeSet;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TestUtilities extends TestFmwk {
     static final int LIMIT = 0x15; // limit to make testing more realistic in terms of collisions
     static final int ITERATIONS = 1000000;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/TextTrieMapTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/TextTrieMapTest.java
index b67f559..6837ef2 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/TextTrieMapTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/TextTrieMapTest.java
@@ -11,7 +11,10 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.impl.TextTrieMap;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TextTrieMapTest extends TestFmwk {
 
     private static final Integer SUN = new Integer(1);
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/Trie2Test.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/Trie2Test.java
index 004b195..53e8f30 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/Trie2Test.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/Trie2Test.java
@@ -21,7 +21,10 @@
 import android.icu.impl.Trie2Writable;
 import android.icu.impl.Trie2_16;
 import android.icu.impl.Trie2_32;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class Trie2Test extends TestFmwk {
     /**
      * Constructor
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/TrieMapTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/TrieMapTest.java
index 6401118..f8d3fb8 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/TrieMapTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/TrieMapTest.java
@@ -29,7 +29,10 @@
 import android.icu.text.UnicodeSet;
 import android.icu.util.StringTrieBuilder.Option;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class TrieMapTest extends TestFmwk {
     static final boolean SHORT = false;
     static final boolean HACK_TO_MAKE_TESTS_PASS = false;
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/TrieTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/TrieTest.java
index f080d9e..ceecbd0 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/TrieTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/TrieTest.java
@@ -17,6 +17,8 @@
 import android.icu.impl.TrieIterator;
 import android.icu.text.UTF16;
 import android.icu.util.RangeValueIterator;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
 * Testing class for Trie. Tests here will be simple, since both CharTrie and 
@@ -25,6 +27,7 @@
 * @author Syn Wee Quek
 * @since release 2.1 Jan 01 2002
 */
+@RunWith(IcuTestFmwkRunner.class)
 public final class TrieTest extends TestFmwk 
 { 
     // constructor ---------------------------------------------------
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/ULocaleCollationTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/ULocaleCollationTest.java
index 6adf4e3..f0ba99d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/ULocaleCollationTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/ULocaleCollationTest.java
@@ -29,7 +29,10 @@
 import android.icu.text.LocaleDisplayNames.UiListItem;
 import android.icu.util.IllformedLocaleException;
 import android.icu.util.ULocale;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ULocaleCollationTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/ULocaleTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/ULocaleTest.java
index ac49c62..b679ff4 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/ULocaleTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/ULocaleTest.java
@@ -44,7 +44,10 @@
 import android.icu.util.ULocale.Minimize;
 import android.icu.util.UResourceBundle;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
+@RunWith(IcuTestFmwkRunner.class)
 public class ULocaleTest extends TestFmwk {
 
     // Ticket #8078 and #11674
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/UtilityTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/UtilityTest.java
index ff07b19..da245e4 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/UtilityTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/UtilityTest.java
@@ -23,11 +23,14 @@
 import android.icu.text.UnicodeSet;
 import android.icu.util.ByteArrayWrapper;
 import android.icu.util.CaseInsensitiveString;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 /**
  * @test
  * @summary Test of internal Utility class
  */
+@RunWith(IcuTestFmwkRunner.class)
 public class UtilityTest extends TestFmwk {
 
     public static void main(String[] args) throws Exception {
diff --git a/android_icu4j/src/main/tests/android/icu/dev/test/util/VersionInfoTest.java b/android_icu4j/src/main/tests/android/icu/dev/test/util/VersionInfoTest.java
index 25c2641..88f438d 100644
--- a/android_icu4j/src/main/tests/android/icu/dev/test/util/VersionInfoTest.java
+++ b/android_icu4j/src/main/tests/android/icu/dev/test/util/VersionInfoTest.java
@@ -14,6 +14,8 @@
 
 import android.icu.dev.test.TestFmwk;
 import android.icu.util.VersionInfo;
+import org.junit.runner.RunWith;
+import android.icu.junit.IcuTestFmwkRunner;
 
 
 /**
@@ -21,6 +23,7 @@
 * @author Syn Wee Quek
 * @since release 2.1 March 01 2002
 */
+@RunWith(IcuTestFmwkRunner.class)
 public final class VersionInfoTest extends TestFmwk 
 { 
     // constructor ---------------------------------------------------
diff --git a/icu4c/source/common/Android.mk b/icu4c/source/common/Android.mk
index 3414799..8e5f757 100644
--- a/icu4c/source/common/Android.mk
+++ b/icu4c/source/common/Android.mk
@@ -19,9 +19,6 @@
 # Common definitions.
 #
 
-icu_common_tidy_checks := \
-    -google-build-using-namespace,-google-explicit-constructor
-
 src_files := \
 	cmemory.c \
 	cstring.c \
@@ -231,7 +228,6 @@
 #
 
 include $(CLEAR_VARS)
-LOCAL_TIDY_CHECKS := $(icu_common_tidy_checks)
 LOCAL_SRC_FILES += $(src_files)
 LOCAL_C_INCLUDES += $(c_includes) $(optional_android_logging_includes)
 LOCAL_CFLAGS += $(local_cflags) -DPIC -fPIC
@@ -254,7 +250,6 @@
 #
 
 include $(CLEAR_VARS)
-LOCAL_TIDY_CHECKS := $(icu_common_tidy_checks)
 LOCAL_SRC_FILES += $(src_files)
 LOCAL_C_INCLUDES += $(c_includes) $(optional_android_logging_includes)
 LOCAL_CFLAGS += $(local_cflags)
@@ -274,7 +269,6 @@
 #
 
 include $(CLEAR_VARS)
-LOCAL_TIDY_CHECKS := $(icu_common_tidy_checks)
 LOCAL_SDK_VERSION := 9
 LOCAL_NDK_STL_VARIANT := stlport_static
 LOCAL_C_INCLUDES += $(c_includes)
diff --git a/icu4c/source/i18n/Android.mk b/icu4c/source/i18n/Android.mk
index 396a56c..a3076f9 100644
--- a/icu4c/source/i18n/Android.mk
+++ b/icu4c/source/i18n/Android.mk
@@ -21,11 +21,6 @@
 
 include $(CLEAR_VARS)
 
-icu_i18n_tidy_checks := \
-    -google-build-using-namespace,-google-explicit-constructor
-
-LOCAL_TIDY_CHECKS := $(icu_i18n_tidy_checks)
-
 src_files := \
 	decContext.c \
 	decNumber.c \
@@ -241,7 +236,6 @@
 #
 
 include $(CLEAR_VARS)
-LOCAL_TIDY_CHECKS := $(icu_i18n_tidy_checks)
 LOCAL_SRC_FILES += $(src_files)
 LOCAL_C_INCLUDES += $(c_includes) $(optional_android_logging_includes)
 LOCAL_CFLAGS += $(local_cflags) -DPIC -fPIC
@@ -259,7 +253,6 @@
 #
 
 include $(CLEAR_VARS)
-LOCAL_TIDY_CHECKS := $(icu_i18n_tidy_checks)
 LOCAL_SRC_FILES += $(src_files)
 LOCAL_C_INCLUDES += $(c_includes) $(optional_android_logging_includes)
 LOCAL_CFLAGS += $(local_cflags)
@@ -277,7 +270,6 @@
 #
 
 include $(CLEAR_VARS)
-LOCAL_TIDY_CHECKS := $(icu_i18n_tidy_checks)
 LOCAL_SDK_VERSION := 9
 LOCAL_NDK_STL_VARIANT := stlport_static
 LOCAL_SRC_FILES += $(src_files)
diff --git a/icu4j/Android.mk b/icu4j/Android.mk
index 46ec3c0..563f7ac 100644
--- a/icu4j/Android.mk
+++ b/icu4j/Android.mk
@@ -98,6 +98,12 @@
     -C "$(LOCAL_PATH)/main/tests/core/src" \
     "com/ibm/icu/dev/test/serializable/data"
 
+#==========================================================
+# build ICU tests for host for testing purposes
+#
+# Run the tests using the ICU4J test framework with the following command:
+#   java -cp ${ANDROID_BUILD_TOP}/out/host/linux-x86/framework/icu4j-host.jar:${ANDROID_BUILD_TOP}/out/host/linux-x86/framework/icu4j-tests-host.jar com.ibm.icu.dev.test.TestAll
+#==========================================================
 include $(CLEAR_VARS)
 LOCAL_SRC_FILES := $(icu4j_test_src_files)
 LOCAL_JAVA_RESOURCE_DIRS := $(icu4j_test_resource_dirs)
@@ -138,24 +144,3 @@
 LOCAL_JARJAR_RULES := $(LOCAL_PATH)/liblayout-jarjar-rules.txt
 LOCAL_MODULE := icu4j-icutzdata-host-jarjar
 include $(BUILD_HOST_JAVA_LIBRARY)
-
-# build repackaged ICU tests
-#
-# Builds against core-libart and core-oj so that it can access all the
-# repackaged android.icu classes and methods and not just the ones available
-# through the Android API.
-include $(CLEAR_VARS)
-
-android_icu4j_tests := ../android_icu4j/src/main/tests
-
-# Don't include this package in any target
-LOCAL_MODULE_TAGS := tests
-LOCAL_SRC_FILES := \
-	$(call all-java-files-under,$(android_icu4j_tests))
-LOCAL_JAVA_RESOURCE_DIRS := $(android_icu4j_tests)
-LOCAL_JAVA_LIBRARIES := \
-	core-oj \
-	core-libart
-LOCAL_NO_STANDARD_LIBRARIES := true
-LOCAL_MODULE := android-icu4j-tests
-include $(BUILD_STATIC_JAVA_LIBRARY)
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java b/icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java
index 6ae2c6b..d50ab20 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/text/DecimalFormat.java
@@ -925,10 +925,7 @@
         synchronized (digitList) {
             digitList.set(number, precision, !useExponentialNotation &&
                           !areSignificantDigitsUsed());
-            // Android patch (ticket #11913) begin.
-            return subformat(number, result, fieldPosition, isNegative, false, parseAttr,
-                    getMaximumIntegerDigits());
-            // Android patch (ticket #11913) end.
+            return subformat(number, result, fieldPosition, isNegative, false, parseAttr);
         }
     }
 
@@ -1129,10 +1126,7 @@
             if (digitList.wasRounded() && roundingMode == BigDecimal.ROUND_UNNECESSARY) {
                 throw new ArithmeticException("Rounding necessary");              
             }
-            // Android patch (ticket #11913) begin.
-            return subformat(number, result, fieldPosition, isNegative, true, parseAttr,
-                    getMaximumIntegerDigits());
-            // Android patch (ticket #11913) end.
+            return subformat(number, result, fieldPosition, isNegative, true, parseAttr);
         }
     }
 
@@ -1167,21 +1161,8 @@
             if (digitList.wasRounded() && roundingMode == BigDecimal.ROUND_UNNECESSARY) {
                 throw new ArithmeticException("Rounding necessary");              
             }
-            // Android patch (ticket #11913) begin.
-            // If the maximum integer digits are still set to the maximum for double, set the
-            // maximum integer digits we will display to the length of the BigInteger, as this can
-            // acceptably be longer than 309 digits.
-            int maxIntDigits;
-            if (getMaximumIntegerDigits() == DOUBLE_INTEGER_DIGITS) {
-                maxIntDigits = digitList.decimalAt;
-                if (maxIntDigits >= 0)
-                    maxIntDigits++;
-            } else {
-                maxIntDigits = getMaximumIntegerDigits();
-            }
             return subformat(number.intValue(), result, fieldPosition, number.signum() < 0, true,
-                             parseAttr, maxIntDigits);
-            // Android patch (ticket #11913) end.
+                             parseAttr);
         }
     }
 
@@ -1214,21 +1195,8 @@
             if (digitList.wasRounded() && roundingMode == BigDecimal.ROUND_UNNECESSARY) {
                 throw new ArithmeticException("Rounding necessary");              
             }
-            // Android patch (ticket #11913) begin.
-            // If the maximum integer digits are still set to the maximum for double, set the
-            // maximum integer digits we will display to the length of the BigDecimal, as this can
-            // acceptably be longer than 309 digits.
-            int maxIntDigits;
-            if (getMaximumIntegerDigits() == DOUBLE_INTEGER_DIGITS) {
-                maxIntDigits = digitList.decimalAt;
-                if (maxIntDigits >= 0)
-                    maxIntDigits++;
-            } else {
-                maxIntDigits = getMaximumIntegerDigits();
-            }
             return subformat(number.doubleValue(), result, fieldPosition, number.signum() < 0,
-                             false, parseAttr, maxIntDigits);
-            // Android patch (ticket #11913) end.
+                             false, parseAttr);
         }
     }
 
@@ -1260,22 +1228,8 @@
             if (digitList.wasRounded() && roundingMode == BigDecimal.ROUND_UNNECESSARY) {
                 throw new ArithmeticException("Rounding necessary");              
             }
-            // Android patch (ticket #11913) begin.
-            // If the maximum integer digits are still set to the maximum for double, set the
-            // maximum integer digits we will display to the length of the BigDecimal, as this can
-            // acceptably be longer than 309 digits.
-            int maxIntDigits;
-            if (getMaximumIntegerDigits() == DOUBLE_INTEGER_DIGITS) {
-                maxIntDigits = digitList.decimalAt;
-                if (maxIntDigits >= 0)
-                    maxIntDigits++;
-            } else {
-                maxIntDigits = getMaximumIntegerDigits();
-            }
-
             return subformat(number.doubleValue(), result, fieldPosition, number.signum() < 0,
-                             false, false, maxIntDigits);
-            // Android patch (ticket #11913) end.
+                             false, false);
         }
     }
 
@@ -1314,20 +1268,17 @@
         }
     }
 
-    // Android patch (ticket #11913) begin.
     private StringBuffer subformat(int number, StringBuffer result, FieldPosition fieldPosition,
-                                   boolean isNegative, boolean isInteger, boolean parseAttr,
-                                   int maxIntDig) {
+                                   boolean isNegative, boolean isInteger, boolean parseAttr) {
         if (currencySignCount == CURRENCY_SIGN_COUNT_IN_PLURAL_FORMAT) {
             // compute the plural category from the digitList plus other settings
             return subformat(currencyPluralInfo.select(getFixedDecimal(number)),
                              result, fieldPosition, isNegative,
-                             isInteger, parseAttr, maxIntDig);
+                             isInteger, parseAttr);
         } else {
-            return subformat(result, fieldPosition, isNegative, isInteger, parseAttr, maxIntDig);
+            return subformat(result, fieldPosition, isNegative, isInteger, parseAttr);
         }
     }
-    // Android patch (ticket #11913) end.
 
     /**
      * This is ugly, but don't see a better way to do it without major restructuring of the code.
@@ -1375,24 +1326,21 @@
         return new FixedDecimal(number, v, f);
     }
 
-    // Android patch (ticket #11913) begin.
     private StringBuffer subformat(double number, StringBuffer result, FieldPosition fieldPosition,
-                                   boolean isNegative, boolean isInteger, boolean parseAttr,
-                                   int maxIntDig) {
+                                   boolean isNegative,
+            boolean isInteger, boolean parseAttr) {
         if (currencySignCount == CURRENCY_SIGN_COUNT_IN_PLURAL_FORMAT) {
             // compute the plural category from the digitList plus other settings
             return subformat(currencyPluralInfo.select(getFixedDecimal(number)),
                              result, fieldPosition, isNegative,
-                             isInteger, parseAttr, maxIntDig);
+                             isInteger, parseAttr);
         } else {
-            return subformat(result, fieldPosition, isNegative, isInteger, parseAttr, maxIntDig);
+            return subformat(result, fieldPosition, isNegative, isInteger, parseAttr);
         }
     }
-    // Android patch (ticket #11913) end.
 
-    // Android patch (ticket #11913) begin.
     private StringBuffer subformat(String pluralCount, StringBuffer result, FieldPosition fieldPosition,
-            boolean isNegative, boolean isInteger, boolean parseAttr, int maxIntDig) {
+            boolean isNegative, boolean isInteger, boolean parseAttr) {
         // There are 2 ways to activate currency plural format: by applying a pattern with
         // 3 currency sign directly, or by instantiate a decimal formatter using
         // PLURALCURRENCYSTYLE.  For both cases, the number of currency sign in the
@@ -1418,18 +1366,15 @@
         // based on pattern alone, and it is already expanded during applying pattern, or
         // setDecimalFormatSymbols, or setCurrency.
         expandAffixAdjustWidth(pluralCount);
-        return subformat(result, fieldPosition, isNegative, isInteger, parseAttr, maxIntDig);
+        return subformat(result, fieldPosition, isNegative, isInteger, parseAttr);
     }
-    // Android patch (ticket #11913) end.
 
     /**
      * Complete the formatting of a finite number. On entry, the
      * digitList must be filled in with the correct digits.
      */
-    // Android patch (ticket #11913) begin.
     private StringBuffer subformat(StringBuffer result, FieldPosition fieldPosition,
-                                   boolean isNegative, boolean isInteger, boolean parseAttr,
-                                   int maxIntDig) {
+                                   boolean isNegative, boolean isInteger, boolean parseAttr) {
         // NOTE: This isn't required anymore because DigitList takes care of this.
         //
         // // The negative of the exponent represents the number of leading // zeros
@@ -1459,18 +1404,18 @@
         if (useExponentialNotation) {
             subformatExponential(result, fieldPosition, parseAttr);
         } else {
-            subformatFixed(result, fieldPosition, isInteger, parseAttr, maxIntDig);
+            subformatFixed(result, fieldPosition, isInteger, parseAttr);
         }
 
         int suffixLen = appendAffix(result, isNegative, false, fieldPosition, parseAttr);
         addPadding(result, fieldPosition, prefixLen, suffixLen);
         return result;
     }
-    // Android patch (ticket #11913) end.
 
-    // Android patch (ticket #11913) begin.
-    private void subformatFixed(StringBuffer result, FieldPosition fieldPosition,
-                                boolean isInteger, boolean parseAttr, int maxIntDig) {
+    private void subformatFixed(StringBuffer result,
+            FieldPosition fieldPosition,
+            boolean isInteger,
+            boolean parseAttr) {
         char [] digits = symbols.getDigitsLocal();
 
         char grouping = currencySignCount == CURRENCY_SIGN_COUNT_ZERO ?
@@ -1478,7 +1423,7 @@
         char decimal = currencySignCount == CURRENCY_SIGN_COUNT_ZERO ?
                 symbols.getDecimalSeparator() : symbols.getMonetaryDecimalSeparator();
         boolean useSigDig = areSignificantDigitsUsed();
-    // Android patch (ticket #11913) end.
+        int maxIntDig = getMaximumIntegerDigits();
         int minIntDig = getMinimumIntegerDigits();
         int i;
         // [Spark/CDL] Record the integer start index.
@@ -5278,14 +5223,15 @@
 
     /**
      * Sets the maximum number of digits allowed in the integer portion of a number. This
-     * override limits the integer digit count to 309.
+     * override limits the integer digit count to 2,000,000,000 to match ICU4C.
      *
      * @see NumberFormat#setMaximumIntegerDigits
      * @stable ICU 2.0
      */
     @Override
     public void setMaximumIntegerDigits(int newValue) {
-        super.setMaximumIntegerDigits(Math.min(newValue, DOUBLE_INTEGER_DIGITS));
+        // Android changed: Allow 2 billion integer digits.
+        super.setMaximumIntegerDigits(Math.min(newValue, MAX_INTEGER_DIGITS));
     }
 
     /**
@@ -5589,11 +5535,12 @@
         // InvalidObjectException("Digit count out of range"); }
 
 
-        // Truncate the maximumIntegerDigits to DOUBLE_INTEGER_DIGITS and
+        // Android changed: Allow 2 billion integer digits.
+        // Truncate the maximumIntegerDigits to MAX_INTEGER_DIGITS and
         // maximumFractionDigits to DOUBLE_FRACTION_DIGITS
 
-        if (getMaximumIntegerDigits() > DOUBLE_INTEGER_DIGITS) {
-            setMaximumIntegerDigits(DOUBLE_INTEGER_DIGITS);
+        if (getMaximumIntegerDigits() > MAX_INTEGER_DIGITS) {
+            setMaximumIntegerDigits(MAX_INTEGER_DIGITS);
         }
         if (getMaximumFractionDigits() > DOUBLE_FRACTION_DIGITS) {
             _setMaximumFractionDigits(DOUBLE_FRACTION_DIGITS);
@@ -6064,6 +6011,11 @@
      * Upper limit on integer and fraction digits for a Java double [Richard/GCL]
      */
     static final int DOUBLE_INTEGER_DIGITS = 309;
+    // Android changed: Allow 2 billion integer digits.
+    // This change is necessary to stay feature-compatible in java.text.DecimalFormat which
+    // used to be implemented using ICU4C (which has a 2 billion integer digits limit) and
+    // is now implemented based on this class.
+    static final int MAX_INTEGER_DIGITS = 2000000000;
     static final int DOUBLE_FRACTION_DIGITS = 340;
 
     /**
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/util/IslamicCalendar.java b/icu4j/main/classes/core/src/com/ibm/icu/util/IslamicCalendar.java
index 240cd9c..1dbc784 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/util/IslamicCalendar.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/util/IslamicCalendar.java
@@ -946,8 +946,7 @@
     /**
      * sets the calculation type for this calendar.
      * 
-     * @draft ICU 55
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 55
      */
     public void setCalculationType(CalculationType type) {
         cType = type;
@@ -962,8 +961,7 @@
     /**
      * gets the calculation type for this calendar.
      * 
-     * @draft ICU 55
-     * @provisional This API might change or be removed in a future release.
+     * @stable ICU 55
      */
     public CalculationType getCalculationType() {
         return cType;
diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/serializable/CompatibilityTest.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/serializable/CompatibilityTest.java
index aa82854..48ff7eb 100644
--- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/serializable/CompatibilityTest.java
+++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/serializable/CompatibilityTest.java
@@ -17,6 +17,7 @@
 import java.io.InputStream;
 import java.io.ObjectInputStream;
 import java.net.JarURLConnection;
+import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.Enumeration;
 import java.util.MissingResourceException;
@@ -235,6 +236,14 @@
         }
 
         try {
+            // android-changed - need to trim the directory off the JAR entry before opening the
+            // connection otherwise it could fail as it will try and find the entry within the JAR
+            // which may not exist.
+            String urlAsString = jarURL.toExternalForm();
+            ix = urlAsString.indexOf("!/");
+            jarURL = new URL(urlAsString.substring(0, ix + 2));
+            // end android-changed
+
             JarURLConnection conn = (JarURLConnection) jarURL.openConnection();
             JarFile jarFile = conn.getJarFile();
             try {
@@ -291,10 +300,28 @@
 
         return target;
     }
-    
+
+    // android-changed - need to access an actual resource file
+    /**
+     * The path to an actual data resource file in the JAR. This is needed because when the
+     * code is packaged for Android the resulting archive does not have entries for directories
+     * and so only actual resources can be found.
+     */
+    private static final String ACTUAL_RESOURCE = "/ICU_3.6/com.ibm.icu.impl.OlsonTimeZone.dat";
+    // end android-changed
+
     protected Target getTargets(String targetName)
     {
-        URL dataURL = getClass().getResource("data");
+        // android-changed - locate an actual resource and find the containing JAR file/directory
+        // Get the URL to an actual resource and then compute the URL to the directory just in
+        // case the resources are in a JAR file that doesn't have entries for directories.
+        URL dataURL = getClass().getResource("data" + ACTUAL_RESOURCE);
+        try {
+            dataURL = new URL(dataURL.toExternalForm().replace(ACTUAL_RESOURCE, ""));
+        } catch (MalformedURLException e) {
+            throw new RuntimeException(e);
+        }
+        // end android-changed
         String protocol = dataURL.getProtocol();
         
         if (protocol.equals("jar")) {
diff --git a/tools/srcgen/generate_android_icu4j.sh b/tools/srcgen/generate_android_icu4j.sh
index 8e376e9..da24b0c 100755
--- a/tools/srcgen/generate_android_icu4j.sh
+++ b/tools/srcgen/generate_android_icu4j.sh
@@ -72,13 +72,13 @@
 echo Processing test code
 # Create the android_icu4j test code
 ALL_TEST_INPUT_DIRS="${TEST_INPUT_DIRS} ${TESTDATA_DIR}"
-java ${SRCGEN_JAVA_ARGS} -cp ${CLASSPATH} com.android.icu4j.srcgen.Icu4jBasicTransform \
+java ${SRCGEN_JAVA_ARGS} -cp ${CLASSPATH} com.android.icu4j.srcgen.Icu4jTestsTransform \
   ${ALL_TEST_INPUT_DIRS} ${TEST_DEST_DIR}
 
 # Copy the data files.
 echo Copying test data
 for INPUT_DIR in ${ALL_TEST_INPUT_DIRS}; do
-  RESOURCES=$(find ${INPUT_DIR} -type f | egrep -v '(\.java|\/package\.html)' || true )
+  RESOURCES=$(find ${INPUT_DIR} -type f | egrep -v '(\.java|com\.ibm\.icu.*\.dat|/package\.html)' || true )
   for RESOURCE in ${RESOURCES}; do
     SOURCE_DIR=$(dirname ${RESOURCE})
     RELATIVE_SOURCE_DIR=$(echo ${SOURCE_DIR} | sed "s,${INPUT_DIR}/,,")
@@ -88,3 +88,21 @@
     cp $RESOURCE ${DEST_DIR}
   done
 done
+
+echo Repackaging serialized test data
+# Excludes JavaTimeZone.dat files as they depend on sun.util.calendar.ZoneInfo
+for INPUT_DIR in ${ALL_TEST_INPUT_DIRS}; do
+  RESOURCES=$(find ${INPUT_DIR} -type f | egrep '(/com\.ibm\.icu.*\.dat)' | egrep -v "JavaTimeZone.dat" || true )
+  for RESOURCE in ${RESOURCES}; do
+    SOURCE_DIR=$(dirname ${RESOURCE})
+    RELATIVE_SOURCE_DIR=$(echo ${SOURCE_DIR} | sed "s,${INPUT_DIR}/,,")
+    RELATIVE_DEST_DIR=$(echo ${RELATIVE_SOURCE_DIR} | sed 's,com/ibm/icu,android/icu,')
+    SOURCE_NAME=$(basename ${RESOURCE})
+    DEST_NAME=${SOURCE_NAME/com.ibm/android}
+    DEST_DIR=${TEST_DEST_DIR}/${RELATIVE_DEST_DIR}
+    mkdir -p ${DEST_DIR}
+    # A simple textual substitution works even though the file is binary as 'com.ibm' and 'android'
+    # are the same length.
+    sed 's|com[./]ibm|android|g' $RESOURCE > ${DEST_DIR}/${DEST_NAME} 
+  done
+done
diff --git a/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jBasicTransform.java b/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jBasicTransform.java
index 10a16d0..3635aef 100644
--- a/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jBasicTransform.java
+++ b/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jBasicTransform.java
@@ -32,7 +32,7 @@
  * Applies basic Android's ICU4J source code transformation rules to code and fixes up the
  * jcite start/end tags so they can be used with doclava.
  *
- * <p>Intended for use when transforming sample and test code.
+ * <p>Intended for use when transforming sample code.
  */
 public class Icu4jBasicTransform {
 
diff --git a/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jTestsTransform.java b/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jTestsTransform.java
new file mode 100644
index 0000000..3a468c3
--- /dev/null
+++ b/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jTestsTransform.java
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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.android.icu4j.srcgen;
+
+import com.google.common.collect.Lists;
+import com.google.currysrc.Main;
+import com.google.currysrc.api.Rules;
+import com.google.currysrc.api.input.InputFileGenerator;
+import com.google.currysrc.api.output.OutputSourceFileGenerator;
+import com.google.currysrc.api.process.Rule;
+import com.google.currysrc.processors.ReplaceTextCommentScanner;
+
+import java.io.File;
+import java.util.Collections;
+import java.util.List;
+
+import static com.android.icu4j.srcgen.Icu4jTransformRules.createOptionalRule;
+
+/**
+ * Applies Android's ICU4J source code transformation rules to test code, adds @RunWith annotations
+ * to test so that they can be run with JUnit and fixes up the jcite start/end tags.
+ *
+ * <p>Intended for use when transforming test code.
+ */
+public class Icu4jTestsTransform {
+
+  private static final boolean DEBUG = false;
+
+  private Icu4jTestsTransform() {
+  }
+
+  /**
+   * Usage:
+   * java com.android.icu4j.srcgen.Icu4jSampleTransform {source files/directories} {target dir}
+   */
+  public static void main(String[] args) throws Exception {
+    new Main(DEBUG).execute(new Icu4jBasicRules(args));
+  }
+
+  private static class Icu4jBasicRules implements Rules {
+
+    private final InputFileGenerator inputFileGenerator;
+
+    private final List<Rule> rules;
+
+    private final OutputSourceFileGenerator outputSourceFileGenerator;
+
+    public Icu4jBasicRules(String[] args) {
+      if (args.length < 2) {
+        throw new IllegalArgumentException("At least 2 arguments required.");
+      }
+
+      String[] inputDirNames = new String[args.length - 1];
+      System.arraycopy(args, 0, inputDirNames, 0, args.length - 1);
+      inputFileGenerator = Icu4jTransformRules.createInputFileGenerator(inputDirNames);
+      rules = createTransformRules();
+      outputSourceFileGenerator = Icu4jTransformRules.createOutputFileGenerator(
+          args[args.length - 1]);
+    }
+
+    @Override
+    public List<Rule> getRuleList(File ignored) {
+      return rules;
+    }
+
+    @Override
+    public InputFileGenerator getInputFileGenerator() {
+      return inputFileGenerator;
+    }
+
+    @Override
+    public OutputSourceFileGenerator getOutputSourceFileGenerator() {
+      return outputSourceFileGenerator;
+    }
+
+    private static List<Rule> createTransformRules() {
+      List<Rule> rules =
+              Lists.newArrayList(Icu4jTransform.Icu4jRules.getRepackagingRules());
+
+      // Annotate test files, ones that extend TestFmwk and TestFmwk.TestGroup with appropriate
+      // @RunWith annotation. This must run after those rules that repackage the classes.
+      rules.add(createOptionalRule(new RunWithAnnotator()));
+
+      // Switch all embedded comment references from com.ibm.icu to android.icu.
+      rules.add(
+          createOptionalRule(new ReplaceTextCommentScanner(
+              Icu4jTransform.ORIGINAL_ICU_PACKAGE, Icu4jTransform.ANDROID_ICU_PACKAGE)));
+
+      // Change sample jcite begin / end tags ---XYZ to Androids 'BEGIN(XYZ)' / 'END(XYZ)'
+      rules.add(createOptionalRule(new TranslateJcite.BeginEndTagsHandler()));
+
+      return rules;
+    }
+  }
+}
diff --git a/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jTransform.java b/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jTransform.java
index d544dc2..0c67659 100644
--- a/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jTransform.java
+++ b/tools/srcgen/src/main/java/com/android/icu4j/srcgen/Icu4jTransform.java
@@ -506,11 +506,26 @@
       /* ASCII order please. */
       "field:android.icu.util.TimeZone#TIMEZONE_ICU",
       "field:android.icu.util.TimeZone#TIMEZONE_JDK",
+      "method:android.icu.text.UnicodeSet#addAllTo(Iterable<T>,T[])",
+      "method:android.icu.text.UnicodeSet#addAllTo(Iterable<T>,U)",
+      "method:android.icu.text.UnicodeSet#addAllTo(String[])",
+      "method:android.icu.text.UnicodeSet#compare(int,CharSequence)",
+      "method:android.icu.text.UnicodeSet#compare(CharSequence,int)",
+      "method:android.icu.text.UnicodeSet#compare(Collection<T>,Collection<T>,ComparisonStyle)",
+      "method:android.icu.text.UnicodeSet#compare(Iterable<T>,Iterable<T>)",
+      "method:android.icu.text.UnicodeSet#resemblesPattern(String,int)",
+      "method:android.icu.text.UnicodeSet#toArray(UnicodeSet)",
+      "method:android.icu.util.CECalendar#ceToJD(long,int,int,int)",
+      "method:android.icu.util.CECalendar#getJDEpochOffset()",
+      "method:android.icu.util.CECalendar#jdToCE(int,int,int[])",
+      "method:android.icu.util.IslamicCalendar#isCivil()",
+      "method:android.icu.util.IslamicCalendar#setCivil(boolean)",
       "method:android.icu.util.TimeZone#getDefaultTimeZoneType()",
       "method:android.icu.util.TimeZone#setDefault(TimeZone)",
       "method:android.icu.util.TimeZone#setDefaultTimeZoneType(int)",
       "method:android.icu.util.ULocale#setDefault(Category,ULocale)",
       "method:android.icu.util.ULocale#setDefault(ULocale)",
+      "method:android.icu.util.VersionInfo#main(String[])",
   };
 
   // The declarations with JavaDocs that have @.jcite tags that should be transformed to doclava
diff --git a/tools/srcgen/src/main/java/com/android/icu4j/srcgen/RunWithAnnotator.java b/tools/srcgen/src/main/java/com/android/icu4j/srcgen/RunWithAnnotator.java
new file mode 100644
index 0000000..6bf74e2
--- /dev/null
+++ b/tools/srcgen/src/main/java/com/android/icu4j/srcgen/RunWithAnnotator.java
@@ -0,0 +1,159 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * 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.android.icu4j.srcgen;
+
+import com.google.currysrc.api.process.Context;
+import com.google.currysrc.api.process.Processor;
+import java.lang.reflect.Modifier;
+import java.util.List;
+import java.util.Map;
+import java.util.TreeMap;
+import org.eclipse.jdt.core.dom.AST;
+import org.eclipse.jdt.core.dom.CompilationUnit;
+import org.eclipse.jdt.core.dom.ImportDeclaration;
+import org.eclipse.jdt.core.dom.Name;
+import org.eclipse.jdt.core.dom.QualifiedName;
+import org.eclipse.jdt.core.dom.SingleMemberAnnotation;
+import org.eclipse.jdt.core.dom.Type;
+import org.eclipse.jdt.core.dom.TypeDeclaration;
+import org.eclipse.jdt.core.dom.TypeLiteral;
+import org.eclipse.jdt.core.dom.rewrite.ASTRewrite;
+import org.eclipse.jdt.core.dom.rewrite.ListRewrite;
+
+/**
+ * Adds @RunWith annotations to test classes.
+ *
+ * <p>A class that extends {@code TestFmwk.TestGroup} will have an annotation
+ * {@code @RunWith(IcuTestGroupRunner.class)} added and a class that extends {@code TestFmwk} will
+ * have an annotation {@code @RunWith(IcuTestFmwkRunner.class)} added.
+ *
+ * <p>Ideally, this would operate on an AST that has resolved type information so that it was
+ * possible to traverse the class hierarchy to identify classes that are derived both directly and
+ * indirectly from the test classes. Unfortunately, that approach is very, very time consuming, an
+ * order of magnitude (if not two) slower than not resolving the types. Therefore, it was quicker
+ * to simply iteratively annotate and run the tests to find the set of direct dependencies and hard
+ * code them in here. That could be an issue if this had to deal with many changes in the test
+ * classes but this code should only have a very short lifespan given that the ICU4J team is
+ * already well on their way to porting the tests over to JUnit.
+ */
+class RunWithAnnotator implements Processor {
+
+    private static final String RUN_WITH_CLASS_NAME = "org.junit.runner.RunWith";
+
+    private static final String[] TEST_FMWK_BASE_CLASSES = {
+            "BidiTest",
+            "CalendarTest",
+            "android.icu.dev.test.TestFmwk",
+            "CompatibilityTest",
+            "CoverageTest",
+            "LanguageTestRoot",
+            "ModuleTest",
+            "TestFmwk",
+            "TestFmwk.TestGroup",
+            "TestGroup",
+            "TransliteratorTest",
+    };
+
+    private static final String[] TEST_GROUP_BASE_CLASSES = {
+            "TestFmwk.TestGroup",
+            "TestGroup",
+    };
+
+    private static Map<String, String> BASE_CLASS_2_RUNNER_CLASS = new TreeMap<>();
+    static {
+        for (String name : TEST_FMWK_BASE_CLASSES) {
+            BASE_CLASS_2_RUNNER_CLASS.put(name, "android.icu.junit.IcuTestFmwkRunner");
+        }
+        for (String name : TEST_GROUP_BASE_CLASSES) {
+            BASE_CLASS_2_RUNNER_CLASS.put(name, "android.icu.junit.IcuTestGroupRunner");
+        }
+    }
+
+    @Override
+    public void process(Context context, CompilationUnit cu) {
+        List types = cu.types();
+        ASTRewrite rewrite = context.rewrite();
+        boolean imported = false;
+        for (Object type : types) {
+            if (type instanceof TypeDeclaration) {
+                TypeDeclaration typeDeclaration = (TypeDeclaration) type;
+                imported = annotateTypeDeclaration(cu, rewrite, typeDeclaration, true, imported);
+            }
+        }
+    }
+
+    private boolean annotateTypeDeclaration(CompilationUnit cu,
+            ASTRewrite rewrite, TypeDeclaration typeDeclaration, boolean topLevelClass,
+            boolean imported) {
+
+        int modifiers = typeDeclaration.getModifiers();
+        if ((topLevelClass || Modifier.isStatic(modifiers)) && Modifier.isPublic(modifiers)
+                && !Modifier.isAbstract(modifiers)) {
+            Type superClassType = typeDeclaration.getSuperclassType();
+            if (superClassType != null) {
+                String name = superClassType.toString();
+                String runnerClass = BASE_CLASS_2_RUNNER_CLASS.get(name);
+                if (runnerClass != null) {
+                    addRunWithAnnotation(cu, rewrite, typeDeclaration, runnerClass, imported);
+                    imported = true;
+                }
+            }
+        }
+
+        for (TypeDeclaration innerClass : typeDeclaration.getTypes()) {
+            imported = annotateTypeDeclaration(cu, rewrite, innerClass, false, imported);
+        }
+
+        return imported;
+    }
+
+    private boolean addRunWithAnnotation(
+            CompilationUnit cu, ASTRewrite rewrite, TypeDeclaration type, String runnerClass,
+            boolean imported) {
+
+        AST ast = cu.getAST();
+
+        QualifiedName qRunWith = (QualifiedName) ast.newName(RUN_WITH_CLASS_NAME);
+        QualifiedName qRunner = (QualifiedName) ast.newName(runnerClass);
+        if (!imported) {
+            appendImport(cu, rewrite, qRunWith);
+            appendImport(cu, rewrite, qRunner);
+        }
+        String runWithName = qRunWith.getName().getIdentifier();
+        String runnerName = qRunner.getName().getIdentifier();
+
+        SingleMemberAnnotation annotation = ast.newSingleMemberAnnotation();
+        annotation.setTypeName(ast.newSimpleName(runWithName));
+
+        TypeLiteral junit4Literal = ast.newTypeLiteral();
+        junit4Literal.setType(ast.newSimpleType(ast.newSimpleName(runnerName)));
+        annotation.setValue(junit4Literal);
+
+        ListRewrite lrw = rewrite.getListRewrite(type, type.getModifiersProperty());
+        lrw.insertFirst(annotation, null);
+
+        return imported;
+    }
+
+    private void appendImport(CompilationUnit cu, ASTRewrite rewriter, Name name) {
+        ListRewrite lrw = rewriter.getListRewrite(cu, CompilationUnit.IMPORTS_PROPERTY);
+        AST ast = cu.getAST();
+        ImportDeclaration importDeclaration = ast.newImportDeclaration();
+        importDeclaration.setName(name);
+        lrw.insertLast(importDeclaration, null);
+    }
+
+}