You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@abdera.apache.org by jm...@apache.org on 2006/11/20 05:21:19 UTC
svn commit: r477033 -
/incubator/abdera/java/trunk/core/src/test/java/org/apache/abdera/test/iri/TestLang.java
Author: jmsnell
Date: Sun Nov 19 20:21:17 2006
New Revision: 477033
URL: http://svn.apache.org/viewvc?view=rev&rev=477033
Log:
http://issues.apache.org/jira/browse/ABDERA-23
Reported by Adam Constabaris
org.apache.abdera.test.iri.TestLang includes (implicitly) tests for the locale parsing routine
initLocale() in org.apache.abdera.util.lang.Lang, but those tests check that the calculated
Locale yields up certain hardcoded values that don't match the results obtained in the above
environment. This issue appears to affect both trunk and the .20 branch.
Using new Locale("en", "US", ca") on Sun 1.5 and 1.6 JREs for Linux yields "US" for displayCountry,
while the existing test checks for equality with the literal value "United States".
Proposed fix: it seems that the desired behavior is really that the intiLocale() method yield up
the right Locale.
Modified:
incubator/abdera/java/trunk/core/src/test/java/org/apache/abdera/test/iri/TestLang.java
Modified: incubator/abdera/java/trunk/core/src/test/java/org/apache/abdera/test/iri/TestLang.java
URL: http://svn.apache.org/viewvc/incubator/abdera/java/trunk/core/src/test/java/org/apache/abdera/test/iri/TestLang.java?view=diff&rev=477033&r1=477032&r2=477033
==============================================================================
--- incubator/abdera/java/trunk/core/src/test/java/org/apache/abdera/test/iri/TestLang.java (original)
+++ incubator/abdera/java/trunk/core/src/test/java/org/apache/abdera/test/iri/TestLang.java Sun Nov 19 20:21:17 2006
@@ -17,6 +17,7 @@
*/
package org.apache.abdera.test.iri;
+import java.util.Locale;
import org.apache.abdera.util.lang.InvalidLangTagSyntax;
import org.apache.abdera.util.lang.Lang;
@@ -27,15 +28,17 @@
public static void testLang() throws Exception {
Lang lang = new Lang("en-US-ca");
-
+ Locale testLocale = new Locale("en", "US", "ca");
+
assertEquals(lang.getPrimary(),"en");
assertEquals(lang.getSubtag(0),"US");
assertEquals(lang.getSubtag(1),"ca");
- assertEquals(lang.getLocale().toString(), "en_US_ca");
- assertEquals(lang.getLocale().getDisplayCountry(), "United States");
- assertEquals(lang.getLocale().getDisplayLanguage(), "English");
-
+ assertEquals( testLocale, lang.getLocale() );
+ assertEquals(testLocale.toString(), lang.getLocale().toString());
+ assertEquals(testLocale.getDisplayCountry(), lang.getLocale().getDisplayCountry());
+ assertEquals(testLocale.getDisplayLanguage(), lang.getLocale().getDisplayLanguage());
+ assertEquals( testLocale.getDisplayVariant(), lang.getLocale().getDisplayVariant());
assertTrue(lang.matches("*"));
assertTrue(lang.matches("en"));
assertTrue(lang.matches("EN"));