mirror of
https://github.com/gui-cs/Terminal.Gui.git
synced 2025-12-26 15:57:56 +01:00
107 lines
3.0 KiB
C#
107 lines
3.0 KiB
C#
using Xunit.Abstractions;
|
|
|
|
namespace Terminal.Gui.ViewsTests;
|
|
|
|
public class FrameViewTests (ITestOutputHelper output)
|
|
{
|
|
[Fact]
|
|
public void Constructors_Defaults ()
|
|
{
|
|
var fv = new FrameView ();
|
|
Assert.Equal (string.Empty, fv.Title);
|
|
Assert.Equal (string.Empty, fv.Text);
|
|
Assert.Equal (LineStyle.Single, fv.BorderStyle);
|
|
|
|
fv = new() { Title = "Test" };
|
|
Assert.Equal ("Test", fv.Title);
|
|
Assert.Equal (string.Empty, fv.Text);
|
|
Assert.Equal (LineStyle.Single, fv.BorderStyle);
|
|
|
|
fv = new()
|
|
{
|
|
X = 1,
|
|
Y = 2,
|
|
Width = 10,
|
|
Height = 20,
|
|
Title = "Test"
|
|
};
|
|
Assert.Equal ("Test", fv.Title);
|
|
Assert.Equal (string.Empty, fv.Text);
|
|
fv.BeginInit ();
|
|
fv.EndInit ();
|
|
Assert.Equal (LineStyle.Single, fv.BorderStyle);
|
|
Assert.Equal (new (1, 2, 10, 20), fv.Frame);
|
|
}
|
|
|
|
[Fact]
|
|
[AutoInitShutdown]
|
|
public void Draw_Defaults ()
|
|
{
|
|
((FakeDriver)Application.Driver!).SetBufferSize (10, 10);
|
|
var fv = new FrameView ();
|
|
Assert.Equal (string.Empty, fv.Title);
|
|
Assert.Equal (string.Empty, fv.Text);
|
|
var top = new Toplevel ();
|
|
top.Add (fv);
|
|
Application.Begin (top);
|
|
Assert.Equal (new (0, 0, 0, 0), fv.Frame);
|
|
TestHelpers.AssertDriverContentsWithFrameAre (@"", output);
|
|
|
|
fv.Height = 5;
|
|
fv.Width = 5;
|
|
Assert.Equal (new (0, 0, 5, 5), fv.Frame);
|
|
Application.Refresh ();
|
|
|
|
TestHelpers.AssertDriverContentsWithFrameAre (
|
|
@"
|
|
┌───┐
|
|
│ │
|
|
│ │
|
|
│ │
|
|
└───┘",
|
|
output
|
|
);
|
|
|
|
fv.X = 1;
|
|
fv.Y = 2;
|
|
Assert.Equal (new (1, 2, 5, 5), fv.Frame);
|
|
Application.Refresh ();
|
|
|
|
TestHelpers.AssertDriverContentsWithFrameAre (
|
|
@"
|
|
┌───┐
|
|
│ │
|
|
│ │
|
|
│ │
|
|
└───┘",
|
|
output
|
|
);
|
|
|
|
fv.X = -1;
|
|
fv.Y = -2;
|
|
Assert.Equal (new (-1, -2, 5, 5), fv.Frame);
|
|
Application.Refresh ();
|
|
|
|
TestHelpers.AssertDriverContentsWithFrameAre (
|
|
@"
|
|
│
|
|
│
|
|
───┘",
|
|
output
|
|
);
|
|
|
|
fv.X = 7;
|
|
fv.Y = 8;
|
|
Assert.Equal (new (7, 8, 5, 5), fv.Frame);
|
|
Application.Refresh ();
|
|
|
|
TestHelpers.AssertDriverContentsWithFrameAre (
|
|
@"
|
|
┌──
|
|
│ ",
|
|
output
|
|
);
|
|
top.Dispose ();
|
|
}
|
|
}
|