Verified Commit 2328738a authored by Théodore Biadala's avatar Théodore Biadala
Browse files

Issue #3462549 by catch, ankitv18: Optimize TelephoneFieldTest

(cherry picked from commit c0e94e34)
parent 202efea7
Loading
Loading
Loading
Loading
Loading
+14 −20
Original line number Diff line number Diff line
@@ -13,7 +13,6 @@
 * Tests the creation of telephone fields.
 *
 * @group telephone
 * @group #slow
 */
class TelephoneFieldTest extends BrowserTestBase {

@@ -101,26 +100,9 @@ public function testTelephoneWidget(): void {
   * Tests the telephone formatter.
   *
   * @covers \Drupal\telephone\Plugin\Field\FieldFormatter\TelephoneLinkFormatter::viewElements
   *
   * @dataProvider providerPhoneNumbers
   */
  public function testTelephoneFormatter($input, $expected): void {
    // Test basic entry of telephone field.
    $edit = [
      'title[0][value]' => $this->randomMachineName(),
      'field_telephone[0][value]' => $input,
    ];

    $this->drupalGet('node/add/article');
    $this->submitForm($edit, 'Save');
    $this->assertSession()->responseContains('<a href="tel:' . $expected . '">');
  }

  /**
   * Provides the phone numbers to check and expected results.
   */
  public static function providerPhoneNumbers() {
    return [
  public function testTelephoneFormatter(): void {
    $phone_numbers = [
      'standard phone number' => ['123456789', '123456789'],
      'whitespace is removed' => ['1234 56789', '123456789'],
      'parse_url(0) return FALSE workaround' => ['0', '0-'],
@@ -133,6 +115,18 @@ public static function providerPhoneNumbers() {
      'php bug 70588 workaround - invalid port number - upper edge check' => ['99999', '9-9999'],
      'lowest number not affected by php bug 70588' => ['100000', '100000'],
    ];
    foreach ($phone_numbers as $data) {
      [$input, $expected] = $data;
      // Test basic entry of telephone field.
      $edit = [
        'title[0][value]' => $this->randomMachineName(),
        'field_telephone[0][value]' => $input,
      ];

      $this->drupalGet('node/add/article');
      $this->submitForm($edit, 'Save');
      $this->assertSession()->responseContains('<a href="tel:' . $expected . '">');
    }
  }

}