diff options
author | Shaopeng Jia <shaopengjia@google.com> | 2010-05-20 15:33:49 -0700 |
---|---|---|
committer | Shaopeng Jia <shaopengjia@google.com> | 2010-05-20 15:37:05 -0700 |
commit | 94c2440dc41689b7d9c169edf5089eeebf7527d7 (patch) | |
tree | 4fce78e0d96e80b76ab41b0bf2cb5ebb28c346dd | |
parent | 0199c997f87434f2c5a7d1df4bb4b5f904312b9f (diff) | |
download | libphonenumber-94c2440dc41689b7d9c169edf5089eeebf7527d7.tar.gz |
Fix a bug where NANPA numbers starting with 1 were incorrectly formatted.
Change-Id: I094e175a1512f75ac7228f1acace307455de3ad3
-rw-r--r-- | README.android | 2 | ||||
-rw-r--r-- | java/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java | 5 | ||||
-rw-r--r-- | java/test/com/google/i18n/phonenumbers/AsYouTypeFormatterTest.java | 13 |
3 files changed, 18 insertions, 2 deletions
diff --git a/README.android b/README.android index d4844fb8..70f13696 100644 --- a/README.android +++ b/README.android @@ -1,4 +1,4 @@ URL: http://code.google.com/p/libphonenumber/ -Version: r19 +Version: r20 License: Apache 2 Description: Google Phone Number Library. diff --git a/java/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java b/java/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java index c5999bf3..e4e26d79 100644 --- a/java/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java +++ b/java/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java @@ -251,7 +251,10 @@ public class AsYouTypeFormatter { private void removeNationalPrefixFromNationalNumber() { int startOfNationalNumber = 0; - if (currentMetaData.hasNationalPrefix()) { + if (currentMetaData.getCountryCode() == 1 && nationalNumber.charAt(0) == '1') { + startOfNationalNumber = 1; + prefixBeforeNationalNumber.append("1 "); + } else if (currentMetaData.hasNationalPrefix()) { Matcher m = nationalPrefixForParsing.matcher(nationalNumber); if (m.lookingAt()) { startOfNationalNumber = m.end(); diff --git a/java/test/com/google/i18n/phonenumbers/AsYouTypeFormatterTest.java b/java/test/com/google/i18n/phonenumbers/AsYouTypeFormatterTest.java index 20efc054..076b4b47 100644 --- a/java/test/com/google/i18n/phonenumbers/AsYouTypeFormatterTest.java +++ b/java/test/com/google/i18n/phonenumbers/AsYouTypeFormatterTest.java @@ -54,6 +54,19 @@ public class AsYouTypeFormatterTest extends TestCase { assertEquals("650 253 2222", formatter.inputDigit('2')); formatter.clear(); + assertEquals("1", formatter.inputDigit('1')); + assertEquals("16", formatter.inputDigit('6')); + assertEquals("165", formatter.inputDigit('5')); + assertEquals("1650", formatter.inputDigit('0')); + assertEquals("16502", formatter.inputDigit('2')); + assertEquals("1 650 25", formatter.inputDigit('5')); + assertEquals("1 650 253", formatter.inputDigit('3')); + assertEquals("1 650 253 2", formatter.inputDigit('2')); + assertEquals("1 650 253 22", formatter.inputDigit('2')); + assertEquals("1 650 253 222", formatter.inputDigit('2')); + assertEquals("1 650 253 2222", formatter.inputDigit('2')); + + formatter.clear(); assertEquals("6", formatter.inputDigit('6')); assertEquals("65", formatter.inputDigit('5')); assertEquals("650", formatter.inputDigit('0')); |