DatabaseGeneralTest.java 文件源码

java
阅读 20 收藏 0 点赞 0 评论 0

项目:sqlite-android 作者:
/**
 * Tests international matching issues for the PHONE_NUMBERS_EQUAL function.
 * 
 * @throws Exception
 */
@Suppress // PHONE_NUMBERS_EQUAL not supported
@SmallTest
public void testPhoneNumbersEqualInternationl() throws Exception {
    assertPhoneNumberEqual("1", "1");
    assertPhoneNumberEqual("123123", "123123");
    assertPhoneNumberNotEqual("123123", "923123");
    assertPhoneNumberNotEqual("123123", "123129");
    assertPhoneNumberNotEqual("123123", "1231234");
    assertPhoneNumberNotEqual("123123", "0123123", false);
    assertPhoneNumberNotEqual("123123", "0123123", true);
    assertPhoneNumberEqual("650-253-0000", "6502530000");
    assertPhoneNumberEqual("650-253-0000", "650 253 0000");
    assertPhoneNumberEqual("650 253 0000", "6502530000");
    assertPhoneNumberEqual("+1 650-253-0000", "6502530000");
    assertPhoneNumberEqual("001 650-253-0000", "6502530000");
    assertPhoneNumberEqual("0111 650-253-0000", "6502530000");

    // Russian trunk digit
    assertPhoneNumberEqual("+79161234567", "89161234567");

    // French trunk digit
    assertPhoneNumberEqual("+33123456789", "0123456789");

    // Trunk digit for city codes in the Netherlands
    assertPhoneNumberEqual("+31771234567", "0771234567");

    // Test broken caller ID seen on call from Thailand to the US
    assertPhoneNumberEqual("+66811234567", "166811234567");

    // Test the same in-country number with different country codes
    assertPhoneNumberNotEqual("+33123456789", "+1123456789");

    // Test one number with country code and the other without
    assertPhoneNumberEqual("5125551212", "+15125551212");

    // Test two NANP numbers that only differ in the area code
    assertPhoneNumberNotEqual("5125551212", "6505551212");

    // Japanese phone numbers
    assertPhoneNumberEqual("090-1234-5678", "+819012345678");
    assertPhoneNumberEqual("090(1234)5678", "+819012345678");
    assertPhoneNumberEqual("090-1234-5678", "+81-90-1234-5678");

    // Equador
    assertPhoneNumberEqual("+593(800)123-1234", "8001231234");
    assertPhoneNumberEqual("+593-2-1234-123", "21234123");

    // Two continuous 0 at the beginning of the phone string should not be
    // treated as trunk prefix in the strict comparation.
    assertPhoneNumberEqual("008001231234", "8001231234", false);
    assertPhoneNumberNotEqual("008001231234", "8001231234", true);

    // Confirm that the bug found before does not re-appear in the strict compalation
    assertPhoneNumberEqual("080-1234-5678", "+819012345678", false);
    assertPhoneNumberNotEqual("080-1234-5678", "+819012345678", true);
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号