You are here

class USPhoneNumberTest in Phone Number 6

Testing is valid US & Canada phone numbers.

Hierarchy

Expanded class hierarchy of USPhoneNumberTest

File

tests/phone.us.test, line 11
Testing US & Canada phone numbers.

View source
class USPhoneNumberTest extends DrupalWebTestcase {

  /**
   * Phone number supposed to be good.
   */
  const PHONENUMBER_INPUT_TYPE_GOOD = 0;

  /**
   * Phone number supposed to have a bad number.
   */
  const PHONENUMBER_INPUT_TYPE_BAD = 1;
  function getInfo() {
    return array(
      'name' => t('Phone number test - US & Canada'),
      'description' => t('Tests various valid and invalid US & Canada phone numbers.'),
      'group' => t('Phone Number'),
    );
  }
  function testPhoneNumber() {
    $test_cases = array(
      array(
        'number' => '8005551212',
        'type' => self::PHONENUMBER_INPUT_TYPE_GOOD,
      ),
      array(
        'number' => '800-555-1212',
        'type' => self::PHONENUMBER_INPUT_TYPE_GOOD,
      ),
      array(
        'number' => '(201)223-4567',
        'type' => self::PHONENUMBER_INPUT_TYPE_GOOD,
      ),
      array(
        'number' => '604 543 9245',
        'type' => self::PHONENUMBER_INPUT_TYPE_GOOD,
      ),
      array(
        'number' => '1-800-555-1212',
        'type' => self::PHONENUMBER_INPUT_TYPE_BAD,
      ),
    );
    foreach ($test_cases as $test) {
      if ($test['type'] == self::PHONENUMBER_INPUT_TYPE_GOOD) {
        $this
          ->assertTrue(us_validate_number($test['number'], '', $dummy), 'Test valid: ' . $test['number']);
      }
      elseif ($test['type'] == self::PHONENUMBER_INPUT_TYPE_BAD) {
        $this
          ->assertFalse(us_validate_number($test['number'], '', $dummy), 'Test invalid: ' . $test['number']);
      }
    }
  }

}

Members