Init
This commit is contained in:
71
Prefab.Tests/Web.Client/Components/Shared/CardGridShould.cs
Normal file
71
Prefab.Tests/Web.Client/Components/Shared/CardGridShould.cs
Normal file
@@ -0,0 +1,71 @@
|
||||
using Bunit;
|
||||
using Microsoft.AspNetCore.Components;
|
||||
using Prefab.Web.Client.Components.Shared;
|
||||
using Shouldly;
|
||||
|
||||
namespace Prefab.Tests.Web.Client.Components.Shared;
|
||||
|
||||
[Trait(TraitName.Category, TraitCategory.Unit)]
|
||||
public sealed class CardGridShould : BunitContext
|
||||
{
|
||||
[Fact]
|
||||
public void RenderGridLayoutWithItems()
|
||||
{
|
||||
var cut = Render<CardGrid>(parameters =>
|
||||
{
|
||||
parameters.Add(p => p.View, "grid");
|
||||
parameters.Add(p => p.ChildContent, builder =>
|
||||
{
|
||||
builder.OpenComponent<CardGridItem>(0);
|
||||
builder.AddAttribute(1, "ChildContent", (RenderFragment)(child =>
|
||||
{
|
||||
child.OpenElement(0, "div");
|
||||
child.AddAttribute(1, "class", "fake-card-1");
|
||||
child.CloseElement();
|
||||
}));
|
||||
builder.CloseComponent();
|
||||
|
||||
builder.OpenComponent<CardGridItem>(2);
|
||||
builder.AddAttribute(3, "ChildContent", (RenderFragment)(child =>
|
||||
{
|
||||
child.OpenElement(0, "div");
|
||||
child.AddAttribute(1, "class", "fake-card-2");
|
||||
child.CloseElement();
|
||||
}));
|
||||
builder.CloseComponent();
|
||||
});
|
||||
});
|
||||
|
||||
var container = cut.Find($".{TemplateCss.ProductsViewList}");
|
||||
container.ClassList.ShouldContain(TemplateCss.ProductsList);
|
||||
container.ClassList.ShouldContain(TemplateCss.ProductsListLayoutGrid);
|
||||
|
||||
var items = cut.FindAll($".{TemplateCss.ProductsListItem}");
|
||||
items.Count.ShouldBe(2);
|
||||
items[0].QuerySelector(".fake-card-1").ShouldNotBeNull();
|
||||
items[1].QuerySelector(".fake-card-2").ShouldNotBeNull();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void RenderListLayoutModifier()
|
||||
{
|
||||
var cut = Render<CardGrid>(parameters =>
|
||||
{
|
||||
parameters.Add(p => p.View, "list");
|
||||
parameters.Add(p => p.ChildContent, builder =>
|
||||
{
|
||||
builder.OpenComponent<CardGridItem>(0);
|
||||
builder.AddAttribute(1, "ChildContent", (RenderFragment)(child =>
|
||||
{
|
||||
child.OpenElement(0, "div");
|
||||
child.AddAttribute(1, "class", "fake-card");
|
||||
child.CloseElement();
|
||||
}));
|
||||
builder.CloseComponent();
|
||||
});
|
||||
});
|
||||
|
||||
var container = cut.Find($".{TemplateCss.ProductsViewList}");
|
||||
container.ClassList.ShouldContain(TemplateCss.ProductsListLayoutList);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user