增加MessageBoxService服务
This commit is contained in:
1 parent
3dcb6a1c34
commit
30a6a5ea24
15 files changed
+517
-153
No files matched your search
@@ -76,6 +76,11 @@ class Program
|
||||
TextBlock text = (TextBlock)shell.FindName("StatusText");
|
||||
ProgressBar progress = (ProgressBar)shell.FindName("StatusProgress");
|
||||
Check(text.Text == "就绪" && progress.Visibility == Visibility.Collapsed, "初始状态");
|
||||
_ = app.Dispatcher.BeginInvoke(new Action(() =>
|
||||
throw new System.ComponentModel.DataAnnotations.ValidationException("分页参数无效")));
|
||||
await Dispatcher.Yield(DispatcherPriority.ApplicationIdle);
|
||||
Check(shell.IsVisible && text.Text == "分页参数无效" && status.Current.Level == StatusLevel.Error,
|
||||
"Dispatcher 异常后主窗口继续运行并显示错误");
|
||||
foreach ((StatusLevel level, string brush, int value) in new[] {
|
||||
(StatusLevel.Info, "PrimaryTextBrush", 0), (StatusLevel.Warning, "WarningBrush", 50),
|
||||
(StatusLevel.Error, "DangerBrush", 75), (StatusLevel.Success, "SuccessBrush", 100) })
|
||||
@@ -90,7 +95,12 @@ class Program
|
||||
Check(text.Text == "完成" && progress.Visibility == Visibility.Collapsed, "纯文本状态隐藏进度");
|
||||
using var usersClient = new StoreApiClient(new ApiClientOptions { BaseUrl = new Uri("http://localhost:14312/api/v1/") }, httpClient);
|
||||
usersClient.Session.Clear();
|
||||
var usersVm = new UserManagementPageViewModel(usersClient, app.Container.Resolve<IDialogService>(), status);
|
||||
var usersExtension = new Prism.Autofac.AutofacContainerExtension();
|
||||
usersExtension.RegisterInstance(typeof(StoreApiClient), usersClient);
|
||||
usersExtension.FinalizeExtension();
|
||||
using var usersContainer = usersExtension.Instance;
|
||||
var userService = usersContainer.Resolve<IUserService>();
|
||||
var usersVm = new UserManagementPageViewModel(userService, app.Container.Resolve<IDialogService>(), status);
|
||||
await usersVm.SearchCommand.Execute();
|
||||
Check(status.Current.Level == StatusLevel.Error && usersVm.CanInteract, "查询失败后显示错误并允许重试");
|
||||
await usersClient.Auth.LoginAsync(new() { UserName = "admin", Password = "320BB1D43EC042096A83DBAC6DC9294A" });
|
||||
@@ -100,6 +110,7 @@ class Program
|
||||
Check(usersVm.CanInteract && usersVm.Total == 51 && status.Current.Level == StatusLevel.Success, "重试查询成功");
|
||||
await usersVm.PageCommand.Execute(new DataGridPageRequest(2, 50));
|
||||
Check(usersVm.Page == 2 && usersVm.CanInteract && status.Current.Level == StatusLevel.Success, "分页查询成功");
|
||||
await userService.DeleteAsync(1);
|
||||
Console.WriteLine("PASS: status bar bindings, colors and background progress reports.");
|
||||
return;
|
||||
}
|
||||
@@ -230,6 +241,13 @@ sealed class LoginHandler : HttpMessageHandler
|
||||
Content = new StringContent("""{"code":200,"data":{"total":51,"items":[{"id":1,"userName":"admin"}]}}""", Encoding.UTF8, "application/json")
|
||||
};
|
||||
}
|
||||
if (request.Method == HttpMethod.Post && request.RequestUri?.PathAndQuery == "/api/v1/user/DelUser?id=1")
|
||||
{
|
||||
return new HttpResponseMessage(HttpStatusCode.OK)
|
||||
{
|
||||
Content = new StringContent("""{"code":200}""", Encoding.UTF8, "application/json")
|
||||
};
|
||||
}
|
||||
if (request.RequestUri?.AbsoluteUri != "http://localhost:14312/api/v1/Auth/Login")
|
||||
throw new Exception("登录路由错误");
|
||||
var body = System.Text.Json.JsonDocument.Parse(await request.Content!.ReadAsStringAsync(cancellationToken));
|
||||
@@ -258,4 +276,4 @@ sealed class TestApp(StoreApiClient client) : App
|
||||
base.RegisterTypes(containerRegistry);
|
||||
containerRegistry.RegisterInstance(client);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user