test(upserver): 归档存档迁移与玩法闭环回归工具
This commit is contained in:
19
CodexOutput/upserver/acceptance-exit-success-delay.cs
Normal file
19
CodexOutput/upserver/acceptance-exit-success-delay.cs
Normal file
@@ -0,0 +1,19 @@
|
||||
using asap.core;
|
||||
if (!UnityEngine.Application.isPlaying) return "Refused: not playing";
|
||||
var user = GContext.container.Resolve<game.IUserService>();
|
||||
var api = GContext.container.Resolve<ICustomServerMgr>();
|
||||
var input = UnityEngine.GameObject.Find("PFLoginAct(Clone)/CustomId/Dialog/ContentArea/InputField (Legacy)");
|
||||
var button = UnityEngine.GameObject.Find("PFLoginAct(Clone)/CustomId/Dialog/OKButton");
|
||||
if (user.IsAuthorized || input == null || button == null || api.ApiBaseUri.AbsoluteUri != "http://s101.local:18080/") return "Refused: retry input unavailable";
|
||||
var lifetime = user.LoginLifetime;
|
||||
input.GetComponent<UnityEngine.UI.InputField>().text = "101";
|
||||
button.GetComponent<UnityEngine.UI.Button>().onClick.Invoke();
|
||||
var until = UnityEngine.Time.realtimeSinceStartup + 25f;
|
||||
while (!user.IsAuthorized && UnityEngine.Time.realtimeSinceStartup < until) await Awaiters.NextFrame;
|
||||
var sceneAtExit = UnityEngine.SceneManagement.SceneManager.GetActiveScene().name;
|
||||
if (!user.IsAuthorized || sceneAtExit != "LoginStage") return $"Not covered: Authorized={user.IsAuthorized}; Scene={sceneAtExit}";
|
||||
game.QuitStage.Logout = true;
|
||||
await GContext.container.Resolve<IStageService>().SwitchStageAsync("QuitStage");
|
||||
await System.Threading.Tasks.Task.Delay(6500);
|
||||
var current = GContext.container.Resolve<game.IUserService>();
|
||||
return $"Scenario=success-delay; AuthorizedAtExit=True; SceneAtExit={sceneAtExit}; OldCancelled={lifetime.IsCancellationRequested}; OldAuthorized={user.IsAuthorized}; OldInternalId={user.InternalId}; OldCookieCount={api.Cookie.Count}; CurrentAuthorized={current?.IsAuthorized}; Scene={UnityEngine.SceneManagement.SceneManager.GetActiveScene().name}";
|
||||
Reference in New Issue
Block a user