Skip to content

Commit 938fb4e

Browse files
committed
!3742 test(#I69N02): add OnConfirmCallback unit test for TableToolbar
* test: 增加 TableToolbar ConfirmButton OnConfirmCallback 单元测试
1 parent 0108bb0 commit 938fb4e

1 file changed

Lines changed: 46 additions & 0 deletions

File tree

test/UnitTest/Components/TableTest.cs

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1350,6 +1350,52 @@ public void Filterable_Ok()
13501350
cut.Contains("card filter-item");
13511351
}
13521352

1353+
[Fact]
1354+
public async Task CustomerToolbarPopconfirmButton_Ok()
1355+
{
1356+
var clicked = false;
1357+
var clickCallback = false;
1358+
var localizer = Context.Services.GetRequiredService<IStringLocalizer<Foo>>();
1359+
var cut = Context.RenderComponent<BootstrapBlazorRoot>(pb =>
1360+
{
1361+
pb.AddChildContent<Table<Foo>>(pb =>
1362+
{
1363+
pb.Add(a => a.ShowToolbar, true);
1364+
pb.Add(a => a.IsMultipleSelect, true);
1365+
pb.Add(a => a.ShowDefaultButtons, false);
1366+
pb.Add(a => a.RenderMode, TableRenderMode.Table);
1367+
pb.Add(a => a.Items, Foo.GenerateFoo(localizer));
1368+
pb.Add(a => a.TableColumns, foo => builder =>
1369+
{
1370+
builder.OpenComponent<TableColumn<Foo, string>>(0);
1371+
builder.AddAttribute(1, "Field", "Name");
1372+
builder.AddAttribute(2, "FieldExpression", Utility.GenerateValueExpression(foo, "Name", typeof(string)));
1373+
builder.CloseComponent();
1374+
});
1375+
pb.Add(a => a.TableToolbarTemplate, builder =>
1376+
{
1377+
builder.OpenComponent<TableToolbarPopconfirmButton<Foo>>(0);
1378+
builder.AddAttribute(1, nameof(TableToolbarPopconfirmButton<Foo>.Text), "test");
1379+
builder.AddAttribute(3, nameof(TableToolbarPopconfirmButton<Foo>.OnClick), EventCallback.Factory.Create<MouseEventArgs>(this, e =>
1380+
{
1381+
clicked = true;
1382+
}));
1383+
builder.AddAttribute(2, nameof(TableToolbarPopconfirmButton<Foo>.OnConfirmCallback), new Func<IEnumerable<Foo>, Task>(foos =>
1384+
{
1385+
clickCallback = true;
1386+
return Task.CompletedTask;
1387+
}));
1388+
builder.CloseComponent();
1389+
});
1390+
});
1391+
});
1392+
1393+
var button = cut.FindComponent<PopConfirmButton>();
1394+
await cut.InvokeAsync(() => button.Instance.OnConfirm.Invoke());
1395+
Assert.True(clickCallback);
1396+
Assert.True(clicked);
1397+
}
1398+
13531399
[Fact]
13541400
public async Task CustomerToolbarButton_Ok()
13551401
{

0 commit comments

Comments
 (0)