You are here

protected function PhoneInternationalFieldTest::setUp in International Phone 3.x

Same name and namespace in other branches
  1. 8.2 tests/src/Functional/PhoneInternationalFieldTest.php \Drupal\Tests\phone_international\Functional\PhoneInternationalFieldTest::setUp()
  2. 8 tests/src/Functional/PhoneInternationalFieldTest.php \Drupal\Tests\phone_international\Functional\PhoneInternationalFieldTest::setUp()

Overrides BrowserTestBase::setUp

File

tests/src/Functional/PhoneInternationalFieldTest.php, line 53

Class

PhoneInternationalFieldTest
Simple test to ensure that main page loads with module enabled.

Namespace

Drupal\Tests\phone_international\Functional

Code

protected function setUp() : void {
  parent::setUp();
  $this
    ->drupalLogin($this
    ->drupalCreateUser([
    'view test entity',
    'administer entity_test content',
    'administer content types',
  ]));

  // Create a field with settings to validate.
  $this->fieldname = mb_strtolower($this
    ->randomMachineName());
  $this->fieldStorage = FieldStorageConfig::create([
    'field_name' => $this->fieldname,
    'entity_type' => 'entity_test',
    'type' => 'phone_international',
  ]);
  $this->fieldStorage
    ->save();
  $this->field = FieldConfig::create([
    'field_storage' => $this->fieldStorage,
    'bundle' => 'entity_test',
  ]);
  $this->field
    ->save();

  /** @var \Drupal\Core\Entity\EntityDisplayRepositoryInterface $display_repository */
  $display_repository = \Drupal::service('entity_display.repository');

  // Create a form display for the default form mode.
  $display_repository
    ->getFormDisplay('entity_test', 'entity_test')
    ->setComponent($this->fieldname, [
    'type' => 'phone_international_widget',
    'settings' => [
      'geolocation' => 'PT',
      'initial_country' => 0,
      'exclude_countries' => [],
      'preferred_countries' => [],
    ],
  ])
    ->save();

  // Create a display for the full view mode.
  $display_repository
    ->getViewDisplay('entity_test', 'entity_test', 'full')
    ->setComponent($this->fieldname, [
    'type' => 'phone_international_formatter',
  ])
    ->save();
}