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"));