| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <?php
- namespace App\Module\AppGame\Tests\Public;
- use Google\Protobuf\Internal\Message;
- use Tests\Unit\ProtoRequestTest;
- use Uraus\Kku\Request;
- use Uraus\Kku\Response;
- use Uraus\Kku\Common\RESPONSE_CODE;
- /**
- * Login4u Handler HTTP测试
- *
- * 测试Login4uHandler在真实HTTP环境中的工作情况
- */
- class Login4uHandlerTest extends ProtoRequestTest
- {
- /**
- * 测试Login4u登录成功
- */
- public function testLogin4uSuccess()
- {
- $response = $this->protobufRequest();
-
- // 验证响应类型
- $this->assertInstanceOf(Response::class, $response);
-
- // 验证响应状态码
- $this->assertEquals(RESPONSE_CODE::SUCCESS, $response->getCode());
-
- // 验证有登录响应数据
- $this->assertTrue($response->hasPublicLogin4U());
-
- $loginResponse = $response->getPublicLogin4U();
-
- // 验证token不为空
- $this->assertNotEmpty($loginResponse->getToken());
-
- // 验证用户状态
- $this->assertFalse($loginResponse->getIsProhibit());
-
- // 验证最后登录信息
- $this->assertTrue($loginResponse->hasLastLoginInfo());
- $lastLoginInfo = $loginResponse->getLastLoginInfo();
- $this->assertGreaterThan(0, $lastLoginInfo->getLastLoginTimes());
-
- // 输出响应信息用于调试
- echo "\n=== Login4u测试结果 ===\n";
- echo "Token: " . $loginResponse->getToken() . "\n";
- echo "IsProhibit: " . ($loginResponse->getIsProhibit() ? 'true' : 'false') . "\n";
- echo "LastLoginTimes: " . $lastLoginInfo->getLastLoginTimes() . "\n";
- echo "完整响应: " . $response->serializeToJsonString() . "\n";
- }
- /**
- * 创建Login4u请求(使用有效的userKey)
- *
- * @return Message
- */
- public function create_request_protobuf(): Message
- {
- // 首先通过手机号密码获取有效的userKey
- $ursService = \ThirdParty\Urs\Services\UrsService::login('18600648353', 'a123123');
- $userKey = $ursService['userKey'];
-
- $request = new Request();
-
- $login4uRequest = new Request\RequestPublicLogin4u();
- $login4uRequest->setKeylogin($userKey);
-
- $request->setPublicLogin4U($login4uRequest);
-
- return $request;
- }
- }
|