diff --git a/SiemensIXBlazor.Tests/ContentHeaderTests.cs b/SiemensIXBlazor.Tests/ContentHeaderTests.cs new file mode 100644 index 0000000..46ead73 --- /dev/null +++ b/SiemensIXBlazor.Tests/ContentHeaderTests.cs @@ -0,0 +1,58 @@ +using Bunit; +using Microsoft.AspNetCore.Components; +using SiemensIXBlazor.Components; +using SiemensIXBlazor.Components.Avatar; + +namespace SiemensIXBlazor.Tests +{ + public class ContentHeaderTests: TestContextBase + { + [Fact] + public void ContentHeaderRendersWithoutCrashing() + { + // Arrange + var cut = RenderComponent(parameters => { + parameters.Add(p => p.Id, "testId"); + parameters.Add(p => p.HasBackButton, true); + parameters.Add(p => p.HeaderSubTitle, "testHeaderSubTitle"); + parameters.Add(p => p.HeaderTitle, "testHeaderTitle"); + parameters.Add(p => p.Variant, Enums.ContentHeader.ContentHeaderVariant.primary); + }); + + // Assert + cut.MarkupMatches(""); + } + + [Fact] + public void ContentHeaderRendersChildContent() + { + // Arrange + var expectedContent = "Expected content"; + + // Act + var cut = RenderComponent(parameters => parameters + .Add(p => p.ChildContent, builder => + { + builder.AddContent(0, expectedContent); + })); + + // Assert + Assert.Contains(expectedContent, cut.Markup); + } + + [Fact] + public void BackButtonClickedEventTriggeredCorrectly() + { + // Arrange + var eventTriggered = false; + var cut = RenderComponent(parameters => parameters.Add(p => p.BackButtonClickedEvent, EventCallback.Factory.Create(this, () => eventTriggered = true))); + + // Act + cut.Instance.BackButtonClickedEvent.InvokeAsync(true); + + // Assert + Assert.True(eventTriggered); + } + + } +}