Mercurial > hg > isophonics-drupal-site
view core/modules/user/tests/src/Functional/UserSaveTest.php @ 16:c2387f117808
Routine composer update
author | Chris Cannam |
---|---|
date | Tue, 10 Jul 2018 15:07:59 +0100 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
<?php namespace Drupal\Tests\user\Functional; use Drupal\Tests\BrowserTestBase; use Drupal\user\Entity\User; /** * Tests account saving for arbitrary new uid. * * @group user */ class UserSaveTest extends BrowserTestBase { /** * Test creating a user with arbitrary uid. */ public function testUserImport() { // User ID must be a number that is not in the database. $uids = \Drupal::entityManager()->getStorage('user')->getQuery() ->sort('uid', 'DESC') ->range(0, 1) ->execute(); $max_uid = reset($uids); $test_uid = $max_uid + mt_rand(1000, 1000000); $test_name = $this->randomMachineName(); // Create the base user, based on drupalCreateUser(). $user = User::create([ 'name' => $test_name, 'uid' => $test_uid, 'mail' => $test_name . '@example.com', 'pass' => user_password(), 'status' => 1, ]); $user->enforceIsNew(); $user->save(); // Test if created user exists. $user_by_uid = User::load($test_uid); $this->assertTrue($user_by_uid, 'Loading user by uid.'); $user_by_name = user_load_by_name($test_name); $this->assertTrue($user_by_name, 'Loading user by name.'); } /** * Ensures that an existing password is unset after the user was saved. */ public function testExistingPasswordRemoval() { /** @var \Drupal\user\Entity\User $user */ $user = User::create(['name' => $this->randomMachineName()]); $user->save(); $user->setExistingPassword('existing password'); $this->assertNotNull($user->pass->existing); $user->save(); $this->assertNull($user->pass->existing); } }