Integrate change cherry-picked for ticket #12994 into android_icu4j.

Added test for Java ListFormatter.

Test: mmma libcore external/icu
Test: CtsIcuTestCases
Change-Id: I7595febee62b4cb7a0d615d0da7dc3d1dde117a1
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 ffb7a96..6afb411 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
@@ -54,6 +54,40 @@
         }
     }
 
+    // Tests resource loading and inheritance when region sublocale
+    // has only partial data for the listPattern element (overriding
+    // some of the parent data). #12994
+    String[] EnglishGBTestData = {
+            "",
+            "A",
+            "A and B",
+            "A, B and C",
+            "A, B, C and D",
+            "A, B, C, D and E"
+    };
+
+    @Test
+    public void TestEnglishGB() {
+        checkData(ListFormatter.getInstance(new ULocale("en_GB")), EnglishGBTestData);
+    }
+
+    // Tests resource loading and inheritance when region sublocale
+    // has only partial data for the listPattern element (overriding
+    // some of the parent data). #12994
+    String[] ChineseTradHKTestData = {
+            "",
+            "A",
+            "A\u53CAB",
+            "A\u3001B\u53CAC",
+            "A\u3001B\u3001C\u53CAD",
+            "A\u3001B\u3001C\u3001D\u53CAE"
+    };
+
+    @Test
+    public void TestChineseTradHK() {
+        checkData(ListFormatter.getInstance(new ULocale("zh_Hant_HK")), ChineseTradHKTestData);
+    }
+
     String[] JapaneseTestData = {
             "",
             "A",