teamlead-dashboard/tests/WIdgets/TUI.Tests/ComponentBaseTests.cs

64 lines
1.9 KiB
C#

using FluentAssertions;
using TUI.Components.Controls.Statics;
using TUI.Engine.Nodes.Attributes.Alignments;
using TUI.Engine.Theme;
namespace Widgets.Tests;
public class ComponentBaseTests
{
[Fact]
public void WhenUseChainingSaveAllChange()
{
var component = new Logo()
.Set(Level.Normal)
.Set(vertical: Vertical.Center, alignmentHorizontal: AlignmentHorizontal.Center);
component.Padding.Top.Should().Be(Level.Normal);
component.Padding.Left.Should().Be(Level.Normal);
component.Padding.Bottom.Should().Be(Level.Normal);
component.Padding.Right.Should().Be(Level.Normal);
component.Alignment.AlignmentHorizontal.Should().Be(AlignmentHorizontal.Center);
component.Alignment.Vertical.Should().Be(Vertical.Center);
}
[Fact]
public void WhenSetPaddingsSaveAllChange()
{
var component = new Logo();
component.Set(Level.Normal);
component.Padding.Top.Should().Be(Level.Normal);
component.Padding.Left.Should().Be(Level.Normal);
component.Padding.Bottom.Should().Be(Level.Normal);
component.Padding.Right.Should().Be(Level.Normal);
}
[Theory]
[InlineData(Vertical.Bottom)]
[InlineData(Vertical.Center)]
[InlineData(Vertical.Top)]
public void WhenSetVerticalAlignSaveAllChange(Vertical alignment)
{
var component = new Logo();
component.Set(vertical: alignment);
component.Alignment.Vertical.Should().Be(alignment);
}
[Theory]
[InlineData(AlignmentHorizontal.Left)]
[InlineData(AlignmentHorizontal.Center)]
[InlineData(AlignmentHorizontal.Right)]
public void WhenSetHorizontalAlignSaveAllChange(AlignmentHorizontal alignment)
{
var component = new Logo();
component.Set(alignmentHorizontal: alignment);
component.Alignment.AlignmentHorizontal.Should().Be(alignment);
}
}