Browse Source

JAVA: libphonenumber v4.7. Mainly metadata updates.

pull/567/head
Lara Scheidegger 14 years ago
committed by Mihaela Rosca
parent
commit
e7db004747
51 changed files with 575 additions and 361 deletions
  1. +13
    -3
      java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java
  2. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC
  3. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM
  4. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT
  5. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ
  6. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF
  7. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR
  8. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY
  9. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ
  10. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR
  11. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU
  12. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE
  13. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ
  14. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE
  15. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG
  16. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET
  17. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA
  18. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH
  19. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK
  20. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN
  21. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID
  22. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN
  23. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP
  24. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE
  25. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG
  26. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH
  27. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR
  28. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW
  29. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY
  30. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB
  31. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU
  32. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA
  33. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD
  34. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK
  35. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA
  36. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE
  37. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ
  38. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA
  39. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB
  40. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC
  41. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE
  42. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL
  43. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN
  44. BIN
      java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ
  45. +3
    -9
      java/libphonenumber/test/com/google/i18n/phonenumbers/AsYouTypeFormatterTest.java
  46. +14
    -7
      java/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberMatcherTest.java
  47. +36
    -23
      java/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java
  48. +1
    -7
      java/libphonenumber/test/com/google/i18n/phonenumbers/ShortNumberUtilTest.java
  49. +50
    -0
      java/libphonenumber/test/com/google/i18n/phonenumbers/TestMetadataTestCase.java
  50. +9
    -0
      java/release_notes.txt
  51. +449
    -312
      resources/PhoneNumberMetaData.xml

+ 13
- 3
java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java View File

@ -63,6 +63,9 @@ public class PhoneNumberUtil {
static final int MAX_LENGTH_FOR_NSN = 16;
// The maximum length of the country calling code.
static final int MAX_LENGTH_COUNTRY_CODE = 3;
// We don't allow input strings for parsing to be longer than 250 chars. This prevents malicious
// input from overflowing the regular-expression engine.
private static final int MAX_INPUT_STRING_LENGTH = 250;
static final String META_DATA_FILE_PREFIX =
"/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto";
private String currentFilePrefix = META_DATA_FILE_PREFIX;
@ -261,7 +264,7 @@ public class PhoneNumberUtil {
// plus_sign*(([punctuation]|[star])*[digits]){3,}([punctuation]|[star]|[digits]|[alpha])*
// Note VALID_PUNCTUATION starts with a -, so must be the first in the range.
private static final String VALID_PHONE_NUMBER =
"[" + PLUS_CHARS + "]*(?:[" + VALID_PUNCTUATION + STAR_SIGN + "]*" + DIGITS + "){3,}[" +
"[" + PLUS_CHARS + "]*+(?:[" + VALID_PUNCTUATION + STAR_SIGN + "]*" + DIGITS + "){3,}[" +
VALID_PUNCTUATION + STAR_SIGN + VALID_ALPHA + DIGITS + "]*";
// Default extension prefix to use when formatting. This will be put in front of any extension
@ -1623,9 +1626,13 @@ public class PhoneNumberUtil {
} else {
// Invalid region entered as country-calling-from (so no metadata was found for it) or the
// region chosen has multiple international dialling prefixes.
LOGGER.log(Level.WARNING,
"Trying to format number from invalid region "
+ regionCallingFrom
+ ". International formatting applied.");
prefixNumberWithCountryCallingCode(countryCode,
PhoneNumberFormat.INTERNATIONAL,
formattedNumber);
PhoneNumberFormat.INTERNATIONAL,
formattedNumber);
}
return formattedNumber.toString();
}
@ -2737,6 +2744,9 @@ public class PhoneNumberUtil {
if (numberToParse == null) {
throw new NumberParseException(NumberParseException.ErrorType.NOT_A_NUMBER,
"The phone number supplied was null.");
} else if (numberToParse.length() > MAX_INPUT_STRING_LENGTH) {
throw new NumberParseException(NumberParseException.ErrorType.TOO_LONG,
"The string supplied was too long to parse.");
}
// Extract a possible number from the string passed in (this strips leading characters that
// could not be the start of a phone number.)


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN View File


BIN
java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ View File


+ 3
- 9
java/libphonenumber/test/com/google/i18n/phonenumbers/AsYouTypeFormatterTest.java View File

@ -21,18 +21,12 @@ import junit.framework.TestCase;
/**
* Unit tests for AsYouTypeFormatter.java
*
* Note that these tests use the metadata contained in the files with TEST_META_DATA_FILE_PREFIX,
* not the normal metadata files, so should not be used for regression test purposes - these tests
* are illustrative only and test functionality.
* Note that these tests use the test metadata, not the normal metadata file, so should not be used
* for regression test purposes - these tests are illustrative only and test functionality.
*
* @author Shaopeng Jia
*/
public class AsYouTypeFormatterTest extends TestCase {
private PhoneNumberUtil phoneUtil;
public AsYouTypeFormatterTest() {
phoneUtil = PhoneNumberUtilTest.initializePhoneUtilForTesting();
}
public class AsYouTypeFormatterTest extends TestMetadataTestCase {
public void testInvalidRegion() {
AsYouTypeFormatter formatter = phoneUtil.getAsYouTypeFormatter(RegionCode.ZZ);


+ 14
- 7
java/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberMatcherTest.java View File

@ -33,13 +33,7 @@ import java.util.NoSuchElementException;
* @author Tom Hofmann
* @see PhoneNumberUtilTest {@link PhoneNumberUtilTest} for the origin of the test data
*/
public class PhoneNumberMatcherTest extends TestCase {
private PhoneNumberUtil phoneUtil;
@Override
protected void setUp() throws Exception {
phoneUtil = PhoneNumberUtilTest.initializePhoneUtilForTesting();
}
public class PhoneNumberMatcherTest extends TestMetadataTestCase {
/** See {@link PhoneNumberUtilTest#testParseNationalNumber()}. */
public void testFindNationalNumber() throws Exception {
@ -710,6 +704,19 @@ public class PhoneNumberMatcherTest extends TestCase {
assertEquals(expected, actual);
}
public void testNonPlusPrefixedNumbersNotFoundForInvalidRegion() throws Exception {
// Does not start with a "+", we won't match it.
Iterable<PhoneNumberMatch> iterable = phoneUtil.findNumbers("1 456 764 156", RegionCode.ZZ);
Iterator<PhoneNumberMatch> iterator = iterable.iterator();
assertFalse(iterator.hasNext());
try {
iterator.next();
fail("Violation of the Iterator contract.");
} catch (NoSuchElementException e) { /* Success */ }
assertFalse(iterator.hasNext());
}
public void testEmptyIteration() throws Exception {
Iterable<PhoneNumberMatch> iterable = phoneUtil.findNumbers("", RegionCode.ZZ);
Iterator<PhoneNumberMatch> iterator = iterable.iterator();


+ 36
- 23
java/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java View File

@ -31,19 +31,13 @@ import java.util.List;
/**
* Unit tests for PhoneNumberUtil.java
*
* Note that these tests use the metadata contained in the files with TEST_META_DATA_FILE_PREFIX,
* not the normal metadata files, so should not be used for regression test purposes - these tests
* are illustrative only and test functionality.
* Note that these tests use the test metadata, not the normal metadata file, so should not be used
* for regression test purposes - these tests are illustrative only and test functionality.
*
* @author Shaopeng Jia
* @author Lara Rennie
*/
public class PhoneNumberUtilTest extends TestCase {
private PhoneNumberUtil phoneUtil;
// This is used by BuildMetadataProtoFromXml.
static final String TEST_META_DATA_FILE_PREFIX =
"/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting";
public class PhoneNumberUtilTest extends TestMetadataTestCase {
// Set up some test numbers to re-use.
private static final PhoneNumber ALPHA_NUMERIC_NUMBER =
new PhoneNumber().setCountryCode(1).setNationalNumber(80074935247L);
@ -110,17 +104,6 @@ public class PhoneNumberUtilTest extends TestCase {
private static final PhoneNumber INTERNATIONAL_TOLL_FREE_TOO_LONG =
new PhoneNumber().setCountryCode(800).setNationalNumber(1234567890L);
public PhoneNumberUtilTest() {
phoneUtil = initializePhoneUtilForTesting();
}
static PhoneNumberUtil initializePhoneUtilForTesting() {
PhoneNumberUtil.resetInstance();
return PhoneNumberUtil.getInstance(
TEST_META_DATA_FILE_PREFIX,
CountryCodeToRegionCodeMapForTesting.getCountryCodeToRegionCodeMap());
}
public void testGetSupportedRegions() {
assertTrue(phoneUtil.getSupportedRegions().size() > 0);
}
@ -1036,11 +1019,9 @@ public class PhoneNumberUtilTest extends TestCase {
// Invalid country calling codes.
invalidNumber.setCountryCode(3923).setNationalNumber(2366L);
assertFalse(phoneUtil.isValidNumberForRegion(invalidNumber, RegionCode.ZZ));
invalidNumber.setCountryCode(3923).setNationalNumber(2366L);
assertFalse(phoneUtil.isValidNumberForRegion(invalidNumber, RegionCode.UN001));
invalidNumber.setCountryCode(0).setNationalNumber(2366L);
assertFalse(phoneUtil.isValidNumberForRegion(invalidNumber, RegionCode.UN001));
invalidNumber.setCountryCode(0);
assertFalse(phoneUtil.isValidNumberForRegion(invalidNumber, RegionCode.UN001));
assertFalse(phoneUtil.isValidNumberForRegion(invalidNumber, RegionCode.ZZ));
}
@ -1594,6 +1575,38 @@ public class PhoneNumberUtilTest extends TestCase {
assertEquals(premiumNumber, phoneUtil.parse("0900 a332 600A5", RegionCode.NZ));
}
public void testParseMaliciousInput() throws Exception {
// Lots of leading + signs before the possible number.
StringBuilder maliciousNumber = new StringBuilder(6000);
for (int i = 0; i < 6000; i++) {
maliciousNumber.append('+');
}
maliciousNumber.append("12222-33-244 extensioB 343+");
try {
phoneUtil.parse(maliciousNumber.toString(), RegionCode.US);
fail("This should not parse without throwing an exception " + maliciousNumber);
} catch (NumberParseException e) {
// Expected this exception.
assertEquals("Wrong error type stored in exception.",
NumberParseException.ErrorType.TOO_LONG,
e.getErrorType());
}
StringBuilder maliciousNumberWithAlmostExt = new StringBuilder(6000);
for (int i = 0; i < 350; i++) {
maliciousNumberWithAlmostExt.append("200");
}
maliciousNumberWithAlmostExt.append(" extensiOB 345");
try {
phoneUtil.parse(maliciousNumberWithAlmostExt.toString(), RegionCode.US);
fail("This should not parse without throwing an exception " + maliciousNumberWithAlmostExt);
} catch (NumberParseException e) {
// Expected this exception.
assertEquals("Wrong error type stored in exception.",
NumberParseException.ErrorType.TOO_LONG,
e.getErrorType());
}
}
public void testParseWithInternationalPrefixes() throws Exception {
assertEquals(US_NUMBER, phoneUtil.parse("+1 (650) 253-0000", RegionCode.NZ));
assertEquals(INTERNATIONAL_TOLL_FREE, phoneUtil.parse("011 800 1234 5678", RegionCode.US));


+ 1
- 7
java/libphonenumber/test/com/google/i18n/phonenumbers/ShortNumberUtilTest.java View File

@ -25,16 +25,10 @@ import java.io.InputStream;
*
* @author Shaopeng Jia
*/
public class ShortNumberUtilTest extends TestCase {
public class ShortNumberUtilTest extends TestMetadataTestCase {
private ShortNumberUtil shortUtil;
static final String TEST_META_DATA_FILE_PREFIX =
"/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting";
public ShortNumberUtilTest() {
PhoneNumberUtil.resetInstance();
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance(
TEST_META_DATA_FILE_PREFIX,
CountryCodeToRegionCodeMapForTesting.getCountryCodeToRegionCodeMap());
shortUtil = new ShortNumberUtil(phoneUtil);
}


+ 50
- 0
java/libphonenumber/test/com/google/i18n/phonenumbers/TestMetadataTestCase.java View File

@ -0,0 +1,50 @@
/*
* Copyright (C) 2012 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.google.i18n.phonenumbers;
import junit.framework.TestCase;
import java.io.IOException;
import java.io.InputStream;
/**
* Root class for PhoneNumberUtil tests that depend on the test metadata file.
* <p>
* Note since tests that extend this class do not use the normal metadata file, they should not be
* used for regression test purposes.
*
* @author Shaopeng Jia
* @author Lara Rennie
*/
public class TestMetadataTestCase extends TestCase {
private static final String TEST_META_DATA_FILE_PREFIX =
"/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting";
protected final PhoneNumberUtil phoneUtil;
public TestMetadataTestCase() {
phoneUtil = initializePhoneUtilForTesting();
}
static PhoneNumberUtil initializePhoneUtilForTesting() {
PhoneNumberUtil.resetInstance();
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance(
TEST_META_DATA_FILE_PREFIX,
CountryCodeToRegionCodeMapForTesting.getCountryCodeToRegionCodeMap());
return phoneUtil;
}
}

+ 9
- 0
java/release_notes.txt View File

@ -1,3 +1,12 @@
March 16th, 2012: libphonenumber-4.7
* Bug fixes
- Now return "too long" for input that is longer than 250 chars when parsing
* Metadata changes
- AC,AM,AT,AZ,BF,BR,BY,BZ,CR,CU,DE,DJ,EE,EG,ET,GA,GH,HK,HN,ID,IN,JP,KE,KG,KH,KR,KW,KY,LB,LU,MA,MD,
MK,NA,NE,NZ,SA,SB,SC,SE,SL,SN,UZ
* Refactoring of test classes so that tests requiring the test metadata to be loaded have a common
base class which handles this.
February 9th, 2012: libphonenumber-4.6
* Bug fixes
- Fix for formatByPattern to enable RFC formatting to work


+ 449
- 312
resources/PhoneNumberMetaData.xml
File diff suppressed because it is too large
View File


Loading…
Cancel
Save