You are here

public function UserAccountFormFieldsTest::testUserRegistrationForm in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/user/tests/src/Kernel/UserAccountFormFieldsTest.php \Drupal\Tests\user\Kernel\UserAccountFormFieldsTest::testUserRegistrationForm()

Tests the user registration form.

File

core/modules/user/tests/src/Kernel/UserAccountFormFieldsTest.php, line 48

Class

UserAccountFormFieldsTest
Verifies that the field order in user account forms is compatible with password managers of web browsers.

Namespace

Drupal\Tests\user\Kernel

Code

public function testUserRegistrationForm() {

  // Install default configuration; required for AccountFormController.
  $this
    ->installConfig([
    'user',
  ]);

  // Disable email confirmation to unlock the password field.
  $this
    ->config('user.settings')
    ->set('verify_mail', FALSE)
    ->save();
  $form = $this
    ->buildAccountForm('register');

  // Verify name and pass field order.
  $this
    ->assertFieldOrder($form['account']);

  // Verify that web browsers may autocomplete the email value and
  // autofill/prefill the name and pass values.
  foreach ([
    'mail',
    'name',
    'pass',
  ] as $key) {
    $this
      ->assertFalse(isset($form['account'][$key]['#attributes']['autocomplete']), "'{$key}' field: 'autocomplete' attribute not found.");
  }
}