Browse Source

Adding tests for our metadata to make sure that we can create an invalid

example number for every region, and that we have an example number for
every type. Also adding better logging for example short number cost
mismatches.
pull/1050/head
Lara Scheidegger 10 years ago
parent
commit
c5b7962816
1 changed files with 22 additions and 4 deletions
  1. +22
    -4
      java/libphonenumber/test/com/google/i18n/phonenumbers/ExampleNumbersTest.java

+ 22
- 4
java/libphonenumber/test/com/google/i18n/phonenumbers/ExampleNumbersTest.java View File

@ -175,7 +175,21 @@ public class ExampleNumbersTest extends TestCase {
public void testEveryRegionHasAnExampleNumber() throws Exception {
for (String regionCode : phoneNumberUtil.getSupportedRegions()) {
PhoneNumber exampleNumber = phoneNumberUtil.getExampleNumber(regionCode);
assertNotNull("None found for region " + regionCode, exampleNumber);
assertNotNull("No example number found for region " + regionCode, exampleNumber);
}
}
public void testEveryRegionHasAnInvalidExampleNumber() throws Exception {
for (String regionCode : phoneNumberUtil.getSupportedRegions()) {
PhoneNumber exampleNumber = phoneNumberUtil.getInvalidExampleNumber(regionCode);
assertNotNull("No invalid example number found for region " + regionCode, exampleNumber);
}
}
public void testEveryTypeHasAnExampleNumber() throws Exception {
for (PhoneNumberUtil.PhoneNumberType type : PhoneNumberUtil.PhoneNumberType.values()) {
PhoneNumber exampleNumber = phoneNumberUtil.getExampleNumberForType(type);
assertNotNull("No example number found for type " + type, exampleNumber);
}
}
@ -199,10 +213,14 @@ public class ExampleNumbersTest extends TestCase {
for (ShortNumberInfo.ShortNumberCost cost : ShortNumberInfo.ShortNumberCost.values()) {
exampleShortNumber = shortNumberInfo.getExampleShortNumberForCost(regionCode, cost);
if (!exampleShortNumber.equals("")) {
if (cost != shortNumberInfo.getExpectedCostForRegion(
phoneNumberUtil.parse(exampleShortNumber, regionCode), regionCode)) {
phoneNumber = phoneNumberUtil.parse(exampleShortNumber, regionCode);
ShortNumberInfo.ShortNumberCost exampleShortNumberCost =
shortNumberInfo.getExpectedCostForRegion(phoneNumber, regionCode);
if (cost != exampleShortNumberCost) {
wrongTypeCases.add(phoneNumber);
LOGGER.log(Level.SEVERE, "Wrong cost for " + phoneNumber.toString());
LOGGER.log(Level.SEVERE, "Wrong cost for " + phoneNumber.toString()
+ ": got " + exampleShortNumberCost
+ ", expected: " + cost);
}
}
}


Loading…
Cancel
Save