|
@@ -1,159 +1,14 @@
|
|
using Xunit.Abstractions;
|
|
using Xunit.Abstractions;
|
|
-using static Terminal.Gui.Pos;
|
|
|
|
|
|
|
|
namespace Terminal.Gui.ViewTests;
|
|
namespace Terminal.Gui.ViewTests;
|
|
|
|
|
|
/// <summary>Tests of the <see cref="View.Text"/> property with <see cref="View.AutoSize"/> set to false.</summary>
|
|
/// <summary>Tests of the <see cref="View.Text"/> property with <see cref="View.AutoSize"/> set to false.</summary>
|
|
-public class AutoSizeFalseTests
|
|
|
|
|
|
+public class AutoSizeFalseTests (ITestOutputHelper output)
|
|
{
|
|
{
|
|
- private readonly ITestOutputHelper _output;
|
|
|
|
- public AutoSizeFalseTests (ITestOutputHelper output) { _output = output; }
|
|
|
|
-
|
|
|
|
- [Fact]
|
|
|
|
- public void AutoSize_False_Equal_Before_And_After_IsInitialized_With_Different_Orders ()
|
|
|
|
- {
|
|
|
|
- var top = new View { Height = 25, Width = 80 };
|
|
|
|
- var view1 = new View { Text = "Say Hello view1 你", AutoSize = false, Width = 10, Height = 5 };
|
|
|
|
- var view2 = new View { Text = "Say Hello view2 你", AutoSize = false, Width = 10, Height = 5 };
|
|
|
|
- var view3 = new View { AutoSize = false, Width = 10, Height = 5, Text = "Say Hello view3 你" };
|
|
|
|
-
|
|
|
|
- var view4 = new View
|
|
|
|
- {
|
|
|
|
- Text = "Say Hello view4 你",
|
|
|
|
- AutoSize = false,
|
|
|
|
- Width = 10,
|
|
|
|
- Height = 5,
|
|
|
|
- TextDirection = TextDirection.TopBottom_LeftRight
|
|
|
|
- };
|
|
|
|
-
|
|
|
|
- var view5 = new View
|
|
|
|
- {
|
|
|
|
- Text = "Say Hello view5 你",
|
|
|
|
- AutoSize = false,
|
|
|
|
- Width = 10,
|
|
|
|
- Height = 5,
|
|
|
|
- TextDirection = TextDirection.TopBottom_LeftRight
|
|
|
|
- };
|
|
|
|
-
|
|
|
|
- var view6 = new View
|
|
|
|
- {
|
|
|
|
- AutoSize = false,
|
|
|
|
- Width = 10,
|
|
|
|
- Height = 5,
|
|
|
|
- TextDirection = TextDirection.TopBottom_LeftRight,
|
|
|
|
- Text = "Say Hello view6 你"
|
|
|
|
- };
|
|
|
|
- top.Add (view1, view2, view3, view4, view5, view6);
|
|
|
|
-
|
|
|
|
- Assert.False (view1.IsInitialized);
|
|
|
|
- Assert.False (view2.IsInitialized);
|
|
|
|
- Assert.False (view3.IsInitialized);
|
|
|
|
- Assert.False (view4.IsInitialized);
|
|
|
|
- Assert.False (view5.IsInitialized);
|
|
|
|
- Assert.False (view1.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view1.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view1.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view1.Height.ToString ());
|
|
|
|
- Assert.False (view2.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view2.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view2.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view2.Height.ToString ());
|
|
|
|
- Assert.False (view3.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view3.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view3.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view3.Height.ToString ());
|
|
|
|
- Assert.False (view4.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view4.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view4.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view4.Height.ToString ());
|
|
|
|
- Assert.False (view5.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view5.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view5.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view5.Height.ToString ());
|
|
|
|
- Assert.False (view6.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view6.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view6.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view6.Height.ToString ());
|
|
|
|
-
|
|
|
|
- top.BeginInit ();
|
|
|
|
- top.EndInit ();
|
|
|
|
-
|
|
|
|
- Assert.True (view1.IsInitialized);
|
|
|
|
- Assert.True (view2.IsInitialized);
|
|
|
|
- Assert.True (view3.IsInitialized);
|
|
|
|
- Assert.True (view4.IsInitialized);
|
|
|
|
- Assert.True (view5.IsInitialized);
|
|
|
|
- Assert.False (view1.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view1.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view1.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view1.Height.ToString ());
|
|
|
|
- Assert.False (view2.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view2.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view2.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view2.Height.ToString ());
|
|
|
|
- Assert.False (view3.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view3.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view3.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view3.Height.ToString ());
|
|
|
|
- Assert.False (view4.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view4.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view4.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view4.Height.ToString ());
|
|
|
|
- Assert.False (view5.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view5.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view5.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view5.Height.ToString ());
|
|
|
|
- Assert.False (view6.AutoSize);
|
|
|
|
- Assert.Equal (new Rectangle (0, 0, 10, 5), view6.Frame);
|
|
|
|
- Assert.Equal ("Absolute(10)", view6.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(5)", view6.Height.ToString ());
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- [Fact]
|
|
|
|
- public void AutoSize_False_If_Text_Empty ()
|
|
|
|
- {
|
|
|
|
- var view1 = new View ();
|
|
|
|
- var view3 = new View { Text = "" };
|
|
|
|
-
|
|
|
|
- Assert.False (view1.AutoSize);
|
|
|
|
- Assert.False (view3.AutoSize);
|
|
|
|
- view1.Dispose ();
|
|
|
|
- view3.Dispose ();
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- [Fact]
|
|
|
|
- public void AutoSize_False_If_Text_Is_Not_Empty ()
|
|
|
|
- {
|
|
|
|
- var view1 = new View ();
|
|
|
|
- view1.Text = "Hello World";
|
|
|
|
- var view3 = new View { Text = "Hello World" };
|
|
|
|
-
|
|
|
|
- Assert.False (view1.AutoSize);
|
|
|
|
- Assert.False (view3.AutoSize);
|
|
|
|
- view1.Dispose ();
|
|
|
|
- view3.Dispose ();
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- [Fact]
|
|
|
|
- public void AutoSize_False_ResizeView_Is_Always_False ()
|
|
|
|
- {
|
|
|
|
- var super = new View ();
|
|
|
|
- var view = new View ();
|
|
|
|
- super.Add (view);
|
|
|
|
-
|
|
|
|
- view.Text = "New text";
|
|
|
|
- super.LayoutSubviews ();
|
|
|
|
- Rectangle expectedViewBounds = new (0, 0, 0, 0);
|
|
|
|
-
|
|
|
|
- Assert.False (view.AutoSize);
|
|
|
|
- Assert.Equal (expectedViewBounds, view.Viewport);
|
|
|
|
- super.Dispose ();
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
[Fact]
|
|
[Fact]
|
|
public void AutoSize_False_ResizeView_With_Dim_Fill_After_IsInitialized ()
|
|
public void AutoSize_False_ResizeView_With_Dim_Fill_After_IsInitialized ()
|
|
{
|
|
{
|
|
- var super = new View { Frame = new Rectangle (0, 0, 30, 80) };
|
|
|
|
|
|
+ var super = new View { Frame = new (0, 0, 30, 80) };
|
|
var view = new View { Width = Dim.Fill (), Height = Dim.Fill () };
|
|
var view = new View { Width = Dim.Fill (), Height = Dim.Fill () };
|
|
super.Add (view);
|
|
super.Add (view);
|
|
Assert.False (view.AutoSize);
|
|
Assert.False (view.AutoSize);
|
|
@@ -174,43 +29,6 @@ public class AutoSizeFalseTests
|
|
Assert.Equal (expectedViewBounds, view.Viewport);
|
|
Assert.Equal (expectedViewBounds, view.Viewport);
|
|
}
|
|
}
|
|
|
|
|
|
- [Fact]
|
|
|
|
- [SetupFakeDriver]
|
|
|
|
- public void AutoSize_False_Setting_AutoSize_False_Keeps_Dims ()
|
|
|
|
- {
|
|
|
|
- var super = new View { Width = 10, Height = 10 };
|
|
|
|
- var view = new View ();
|
|
|
|
- view.Width = 2;
|
|
|
|
- view.Height = 1;
|
|
|
|
- Assert.Equal ("Absolute(2)", view.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(1)", view.Height.ToString ());
|
|
|
|
-
|
|
|
|
- super.Add (view);
|
|
|
|
- super.BeginInit ();
|
|
|
|
- super.EndInit ();
|
|
|
|
- super.LayoutSubviews ();
|
|
|
|
- Assert.Equal ("Absolute(2)", view.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(1)", view.Height.ToString ());
|
|
|
|
-
|
|
|
|
- view.AutoSize = true;
|
|
|
|
- Assert.Equal (Dim.Auto(Dim.DimAutoStyle.Text), view.Width);
|
|
|
|
- Assert.Equal (Dim.Auto (Dim.DimAutoStyle.Text), view.Height);
|
|
|
|
-
|
|
|
|
- view.AutoSize = false;
|
|
|
|
- Assert.Equal ("Absolute(0)", view.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(0)", view.Height.ToString ());
|
|
|
|
-
|
|
|
|
- view.Width = 2;
|
|
|
|
- view.Height = 1;
|
|
|
|
- Assert.Equal ("Absolute(2)", view.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(1)", view.Height.ToString ());
|
|
|
|
-
|
|
|
|
- view.AutoSize = false;
|
|
|
|
- Assert.Equal ("Absolute(2)", view.Width.ToString ());
|
|
|
|
- Assert.Equal ("Absolute(1)", view.Height.ToString ());
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
-
|
|
|
|
[Fact]
|
|
[Fact]
|
|
[SetupFakeDriver]
|
|
[SetupFakeDriver]
|
|
public void AutoSize_False_View_IsEmpty_False_Return_Null_Lines ()
|
|
public void AutoSize_False_View_IsEmpty_False_Return_Null_Lines ()
|
|
@@ -229,7 +47,7 @@ public class AutoSizeFalseTests
|
|
Assert.False (view.AutoSize);
|
|
Assert.False (view.AutoSize);
|
|
Assert.Equal (new (0, 0, 3, 1), view.Frame);
|
|
Assert.Equal (new (0, 0, 3, 1), view.Frame);
|
|
Assert.Equal (new (3, 1), view.TextFormatter.Size);
|
|
Assert.Equal (new (3, 1), view.TextFormatter.Size);
|
|
- Assert.Equal (new List<string> { "Vie" }, view.TextFormatter.GetLines ());
|
|
|
|
|
|
+ Assert.Equal (new() { "Vie" }, view.TextFormatter.GetLines ());
|
|
Assert.Equal (new (0, 0, 10, 4), frame.Frame);
|
|
Assert.Equal (new (0, 0, 10, 4), frame.Frame);
|
|
|
|
|
|
frame.LayoutSubviews ();
|
|
frame.LayoutSubviews ();
|
|
@@ -243,7 +61,7 @@ public class AutoSizeFalseTests
|
|
└────────┘
|
|
└────────┘
|
|
";
|
|
";
|
|
|
|
|
|
- Rectangle pos = TestHelpers.AssertDriverContentsWithFrameAre (expected, _output);
|
|
|
|
|
|
+ Rectangle pos = TestHelpers.AssertDriverContentsWithFrameAre (expected, output);
|
|
Assert.Equal (new (0, 0, 10, 4), pos);
|
|
Assert.Equal (new (0, 0, 10, 4), pos);
|
|
|
|
|
|
text = "0123456789";
|
|
text = "0123456789";
|
|
@@ -256,7 +74,7 @@ public class AutoSizeFalseTests
|
|
|
|
|
|
Assert.Equal (new (0, 0, 0, 1), view.Frame);
|
|
Assert.Equal (new (0, 0, 0, 1), view.Frame);
|
|
Assert.Equal (new (0, 1), view.TextFormatter.Size);
|
|
Assert.Equal (new (0, 1), view.TextFormatter.Size);
|
|
- Assert.Equal (new List<string> { string.Empty }, view.TextFormatter.GetLines ());
|
|
|
|
|
|
+ Assert.Equal (new() { string.Empty }, view.TextFormatter.GetLines ());
|
|
|
|
|
|
expected = @"
|
|
expected = @"
|
|
┌────────┐
|
|
┌────────┐
|
|
@@ -265,7 +83,7 @@ public class AutoSizeFalseTests
|
|
└────────┘
|
|
└────────┘
|
|
";
|
|
";
|
|
|
|
|
|
- pos = TestHelpers.AssertDriverContentsWithFrameAre (expected, _output);
|
|
|
|
|
|
+ pos = TestHelpers.AssertDriverContentsWithFrameAre (expected, output);
|
|
Assert.Equal (new (0, 0, 10, 4), pos);
|
|
Assert.Equal (new (0, 0, 10, 4), pos);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -342,7 +160,7 @@ public class AutoSizeFalseTests
|
|
└──────────────────────────────┘
|
|
└──────────────────────────────┘
|
|
";
|
|
";
|
|
|
|
|
|
- Rectangle pos = TestHelpers.AssertDriverContentsWithFrameAre (expected, _output);
|
|
|
|
|
|
+ Rectangle pos = TestHelpers.AssertDriverContentsWithFrameAre (expected, output);
|
|
|
|
|
|
verticalView.Text = $"最初の行{Environment.NewLine}二行目";
|
|
verticalView.Text = $"最初の行{Environment.NewLine}二行目";
|
|
Assert.True (verticalView.TextFormatter.NeedsFormat);
|
|
Assert.True (verticalView.TextFormatter.NeedsFormat);
|
|
@@ -391,6 +209,6 @@ public class AutoSizeFalseTests
|
|
└──────────────────────────────┘
|
|
└──────────────────────────────┘
|
|
";
|
|
";
|
|
|
|
|
|
- pos = TestHelpers.AssertDriverContentsWithFrameAre (expected, _output);
|
|
|
|
|
|
+ pos = TestHelpers.AssertDriverContentsWithFrameAre (expected, output);
|
|
}
|
|
}
|
|
}
|
|
}
|