Merge "Add tests for Locale.set[get]Default(Locale.Category..)"
diff --git a/luni/src/test/java/libcore/java/util/LocaleTest.java b/luni/src/test/java/libcore/java/util/LocaleTest.java
index 8d184e2..f9146b3 100644
--- a/luni/src/test/java/libcore/java/util/LocaleTest.java
+++ b/luni/src/test/java/libcore/java/util/LocaleTest.java
@@ -1250,4 +1250,31 @@
Locale l = (Locale) oinput.readObject();
}
}
+
+ public void test_setDefault_withCategory() {
+ final Locale defaultLocale = Locale.getDefault();
+ try {
+ Locale.setDefault(Locale.US);
+ assertEquals(Locale.US, Locale.getDefault(Locale.Category.FORMAT));
+ assertEquals(Locale.US, Locale.getDefault(Locale.Category.DISPLAY));
+ assertEquals(Locale.US, Locale.getDefault());
+
+ Locale.setDefault(Locale.Category.FORMAT, Locale.UK);
+ assertEquals(Locale.UK, Locale.getDefault(Locale.Category.FORMAT));
+ assertEquals(Locale.US, Locale.getDefault(Locale.Category.DISPLAY));
+ assertEquals(Locale.US, Locale.getDefault());
+
+ Locale.setDefault(Locale.Category.DISPLAY, Locale.CANADA);
+ assertEquals(Locale.UK, Locale.getDefault(Locale.Category.FORMAT));
+ assertEquals(Locale.CANADA, Locale.getDefault(Locale.Category.DISPLAY));
+ assertEquals(Locale.US, Locale.getDefault());
+
+ Locale.setDefault(Locale.FRANCE);
+ assertEquals(Locale.FRANCE, Locale.getDefault(Locale.Category.FORMAT));
+ assertEquals(Locale.FRANCE, Locale.getDefault(Locale.Category.DISPLAY));
+ assertEquals(Locale.FRANCE, Locale.getDefault());
+ } finally {
+ Locale.setDefault(defaultLocale);
+ }
+ }
}