コード例 #1
0
 public function testFormatWithPreferredCarrierCode()
 {
     // We only support this for AR in our test metadata.
     $arNumber = new PhoneNumber();
     $arNumber->setCountryCode(54)->setNationalNumber(91234125678);
     // Test formatting with no preferred carrier code stored in the number itself.
     $this->assertEquals("01234 15 12-5678", $this->phoneUtil->formatNationalNumberWithPreferredCarrierCode($arNumber, "15"));
     $this->assertEquals("01234 12-5678", $this->phoneUtil->formatNationalNumberWithPreferredCarrierCode($arNumber, ""));
     // Test formatting with preferred carrier code present.
     $arNumber->setPreferredDomesticCarrierCode("19");
     $this->assertEquals("01234 12-5678", $this->phoneUtil->format($arNumber, PhoneNumberFormat::NATIONAL));
     $this->assertEquals("01234 19 12-5678", $this->phoneUtil->formatNationalNumberWithPreferredCarrierCode($arNumber, "15"));
     $this->assertEquals("01234 19 12-5678", $this->phoneUtil->formatNationalNumberWithPreferredCarrierCode($arNumber, ""));
     // When the preferred_domestic_carrier_code is present (even when it contains an empty string),
     // use it instead of the default carrier code passed in.
     $arNumber->setPreferredDomesticCarrierCode("");
     $this->assertEquals("01234 12-5678", $this->phoneUtil->formatNationalNumberWithPreferredCarrierCode($arNumber, "15"));
     // We don't support this for the US so there should be no change.
     $usNumber = new PhoneNumber();
     $usNumber->setCountryCode(1)->setNationalNumber(4241231234)->setPreferredDomesticCarrierCode("99");
     $this->assertEquals("424 123 1234", $this->phoneUtil->format($usNumber, PhoneNumberFormat::NATIONAL));
     $this->assertEquals("424 123 1234", $this->phoneUtil->formatNationalNumberWithPreferredCarrierCode($usNumber, "15"));
 }