Merge "Do not format numbers starting with hash or star."

This commit is contained in:
Flavio Lerda
2011-09-28 04:38:00 -07:00
committed by Android (Google) Code Review
2 changed files with 17 additions and 0 deletions

View File

@@ -1409,6 +1409,11 @@ public class PhoneNumberUtils
* @hide
*/
public static String formatNumber(String phoneNumber, String defaultCountryIso) {
// Do not attempt to format numbers that start with a hash or star symbol.
if (phoneNumber.startsWith("#") || phoneNumber.startsWith("*")) {
return phoneNumber;
}
PhoneNumberUtil util = PhoneNumberUtil.getInstance();
String result = null;
try {

View File

@@ -513,7 +513,19 @@ public class PhoneNumberUtilsTest extends AndroidTestCase {
assertEquals("(650) 291-0000", PhoneNumberUtils.formatNumber("650 2910000", "US"));
assertEquals("123-4567", PhoneNumberUtils.formatNumber("1234567", "US"));
assertEquals("(800) 466-4114", PhoneNumberUtils.formatNumber("800-GOOG-114", "US"));
}
@SmallTest
public void testFormatNumber_LeadingStarAndHash() {
// Numbers with a leading '*' or '#' should be left unchanged.
assertEquals("*650 2910000", PhoneNumberUtils.formatNumber("*650 2910000", "US"));
assertEquals("#650 2910000", PhoneNumberUtils.formatNumber("#650 2910000", "US"));
assertEquals("*#650 2910000", PhoneNumberUtils.formatNumber("*#650 2910000", "US"));
assertEquals("#*650 2910000", PhoneNumberUtils.formatNumber("#*650 2910000", "US"));
assertEquals("#650*2910000", PhoneNumberUtils.formatNumber("#650*2910000", "US"));
assertEquals("#650*2910000", PhoneNumberUtils.formatNumber("#650*2910000", "US"));
assertEquals("##650 2910000", PhoneNumberUtils.formatNumber("##650 2910000", "US"));
assertEquals("**650 2910000", PhoneNumberUtils.formatNumber("**650 2910000", "US"));
}
@SmallTest