yiiapi/tests/framework/web/auth/CWebUserTest.php

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

/**
 * Test for CWebUser
 *
 * tests are running in separate process to allow session management to work properly
 */
class CWebUserTest extends CTestCase
{
	public function setUp()
	{
		Yii::app()->setComponent('authManager', new CPhpAuthManager());

		/** @var CPhpAuthManager $auth */
		$auth = Yii::app()->authManager;
		$auth->createOperation('createPost');
		$auth->createOperation('deletePost');
		$auth->assign('createPost', 'admin');
	}

	public function tearDown()
	{
		Yii::app()->session->destroy();
		Yii::app()->setComponent('authManager', null);
	}

	public function booleanProvider()
	{
		return array(array(true), array(false));
	}

	/**
	 * @runInSeparateProcess
	 * @outputBuffering enabled
	 * @dataProvider booleanProvider
	 */
	public function testLoginLogout($destroySession)
	{
		$identity = new CUserIdentity('testUser', 'testPassword');

		$user = new CWebUser();
		$user->init();

		// be guest before login
		$this->assertTrue($user->isGuest);
		// do a login
		$this->assertTrue($user->login($identity));
		// don't be guest after login
		$this->assertFalse($user->isGuest);
		$this->assertEquals('testUser', $user->getId());
		$this->assertEquals('testUser', $user->getName());

		$user->logout($destroySession);

		// be guest after logout
		$this->assertNull($user->getId());
		$this->assertEquals($user->guestName, $user->getName());
	}

	/**
后面还有 17 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。