function LoginFinalizerTest::testLogin
Tests login.
File
-
core/
modules/ user/ tests/ src/ Kernel/ LoginFinalizerTest.php, line 53
Class
- LoginFinalizerTest
- Tests login finalization.
Namespace
Drupal\Tests\user\KernelCode
public function testLogin() : void {
// Create a user.
$user = $this->createUser();
// Get the session.
$session = $this->container
->get('request_stack')
->getSession();
// Assert no user is logged in.
$this->assertFalse($session->has('uid'));
// Handle the login.
$finalize = $this->container
->get(LoginFinalizer::class);
$finalize->finalizeLogin($user);
// Assert our user is logged in.
$this->assertEquals($user->id(), $session->get('uid'));
$this->assertTrue($session->get('check_logged_in'));
// Assert last login time is set.
$user = User::load($user->id());
$this->assertEquals(1234567890, $user->getLastLoginTime());
// Assert our user login hook was called.
$this->assertEquals($user->id(), $this->testUserId);
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.