Browse Source

Java: Fix geocoder to return empty string for Global Networks numbers.

Review URL: http://codereview.appspot.com/5557071
pull/567/head
Shaopeng Jia 14 years ago
committed by Mihaela Rosca
parent
commit
a417571ecd
2 changed files with 6 additions and 1 deletions
  1. +2
    -1
      java/geocoder/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
  2. +4
    -0
      java/geocoder/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java

+ 2
- 1
java/geocoder/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java View File

@ -137,7 +137,8 @@ public class PhoneNumberOfflineGeocoder {
* Returns the customary display name in the given language for the given region.
*/
private String getRegionDisplayName(String regionCode, Locale language) {
return (regionCode == null || regionCode.equals("ZZ"))
return (regionCode == null || regionCode.equals("ZZ") ||
regionCode.equals(PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY))
? "" : new Locale("", regionCode).getDisplayCountry(language);
}


+ 4
- 0
java/geocoder/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java View File

@ -57,6 +57,8 @@ public class PhoneNumberOfflineGeocoderTest extends TestCase {
new PhoneNumber().setCountryCode(61).setNationalNumber(236618300L);
private static final PhoneNumber NUMBER_WITH_INVALID_COUNTRY_CODE =
new PhoneNumber().setCountryCode(999).setNationalNumber(2423651234L);
private static final PhoneNumber INTERNATIONAL_TOLL_FREE =
new PhoneNumber().setCountryCode(800).setNationalNumber(12345678L);
public void testGetDescriptionForNumberWithNoDataFile() {
// No data file containing mappings for US numbers is available in Chinese for the unittests. As
@ -69,6 +71,8 @@ public class PhoneNumberOfflineGeocoderTest extends TestCase {
geocoder.getDescriptionForNumber(AU_NUMBER, new Locale("en", "US")));
assertEquals("", geocoder.getDescriptionForNumber(NUMBER_WITH_INVALID_COUNTRY_CODE,
new Locale("en", "US")));
assertEquals("", geocoder.getDescriptionForNumber(INTERNATIONAL_TOLL_FREE,
new Locale("en", "US")));
}
public void testGetDescriptionForNumberWithMissingPrefix() {


Loading…
Cancel
Save