annotate core/modules/user/tests/src/Functional/UserEditedOwnAccountTest.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents af1871eacc83
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\Tests\user\Functional;
Chris@0 4
Chris@0 5 use Drupal\Tests\BrowserTestBase;
Chris@18 6 use Drupal\user\UserInterface;
Chris@0 7
Chris@0 8 /**
Chris@0 9 * Tests user edited own account can still log in.
Chris@0 10 *
Chris@0 11 * @group user
Chris@0 12 */
Chris@0 13 class UserEditedOwnAccountTest extends BrowserTestBase {
Chris@0 14
Chris@0 15 public function testUserEditedOwnAccount() {
Chris@0 16 // Change account setting 'Who can register accounts?' to Administrators
Chris@0 17 // only.
Chris@18 18 $this->config('user.settings')->set('register', UserInterface::REGISTER_ADMINISTRATORS_ONLY)->save();
Chris@0 19
Chris@0 20 // Create a new user account and log in.
Chris@0 21 $account = $this->drupalCreateUser(['change own username']);
Chris@0 22 $this->drupalLogin($account);
Chris@0 23
Chris@0 24 // Change own username.
Chris@0 25 $edit = [];
Chris@0 26 $edit['name'] = $this->randomMachineName();
Chris@0 27 $this->drupalPostForm('user/' . $account->id() . '/edit', $edit, t('Save'));
Chris@0 28
Chris@0 29 // Log out.
Chris@0 30 $this->drupalLogout();
Chris@0 31
Chris@0 32 // Set the new name on the user account and attempt to log back in.
Chris@0 33 $account->name = $edit['name'];
Chris@0 34 $this->drupalLogin($account);
Chris@0 35 }
Chris@0 36
Chris@0 37 }