Files
Terminal.Gui/Tests/UnitTestsParallelizable/View/Adornment/MarginTests.cs
Tig fdeaa8331b Fixes #4298 - Updates test namespaces (#4299)
* Refactored test namespaces.
Moved some tests that were in wrong project.
Code cleanup

* Parrallel -> Parallel
2025-10-20 14:14:38 -06:00

67 lines
2.4 KiB
C#

using UnitTests;
using Xunit.Abstractions;
namespace UnitTests_Parallelizable.ViewTests;
public class MarginTests
{
[Fact]
public void Is_Visually_Transparent ()
{
var view = new View { Height = 3, Width = 3 };
Assert.True(view.Margin!.ViewportSettings.HasFlag(ViewportSettingsFlags.Transparent), "Margin should be transparent by default.");
}
[Fact]
public void Is_Transparent_To_Mouse ()
{
var view = new View { Height = 3, Width = 3 };
Assert.True (view.Margin!.ViewportSettings.HasFlag (ViewportSettingsFlags.TransparentMouse), "Margin should be transparent to mouse by default.");
}
[Fact]
public void When_Not_Visually_Transparent ()
{
var view = new View { Height = 3, Width = 3 };
// Give the Margin some size
view.Margin!.Thickness = new Thickness (1, 1, 1, 1);
// Give it Text
view.Margin.Text = "Test";
// Strip off ViewportSettings.Transparent
view.Margin!.ViewportSettings &= ~ViewportSettingsFlags.Transparent;
//
}
[Fact]
public void Thickness_Is_Empty_By_Default ()
{
var view = new View { Height = 3, Width = 3 };
Assert.Equal (Thickness.Empty, view.Margin!.Thickness);
}
// ShadowStyle
[Fact]
public void Margin_Uses_ShadowStyle_Transparent ()
{
var view = new View { Height = 3, Width = 3, ShadowStyle = ShadowStyle.Transparent };
Assert.Equal (ShadowStyle.Transparent, view.Margin!.ShadowStyle);
Assert.True (view.Margin.ViewportSettings.HasFlag (ViewportSettingsFlags.TransparentMouse), "Margin should be transparent to mouse when ShadowStyle is Transparent.");
Assert.True (view.Margin!.ViewportSettings.HasFlag (ViewportSettingsFlags.Transparent), "Margin should be transparent when ShadowStyle is Transparent..");
}
[Fact]
public void Margin_Uses_ShadowStyle_Opaque ()
{
var view = new View { Height = 3, Width = 3, ShadowStyle = ShadowStyle.Opaque };
Assert.Equal (ShadowStyle.Opaque, view.Margin!.ShadowStyle);
Assert.True (view.Margin.ViewportSettings.HasFlag (ViewportSettingsFlags.TransparentMouse), "Margin should be transparent to mouse when ShadowStyle is Opaque.");
Assert.True (view.Margin!.ViewportSettings.HasFlag (ViewportSettingsFlags.Transparent), "Margin should be transparent when ShadowStyle is Opaque..");
}
}