csharpc-sharpdotnetxamlavaloniauicross-platformcross-platform-xamlavaloniaguimulti-platformuser-interfacedotnetcore
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.3 KiB
48 lines
1.3 KiB
using Avalonia.UnitTests;
|
|
using Xunit;
|
|
|
|
namespace Avalonia.Controls.UnitTests
|
|
{
|
|
public class ReversibleStackPanelTests : ScopedTestBase
|
|
{
|
|
[Fact]
|
|
public void Arranges_In_Reverse_Order()
|
|
{
|
|
var target = new ReversibleStackPanel
|
|
{
|
|
ReverseOrder = true,
|
|
Children =
|
|
{
|
|
new Border { Height = 30, Width = 10 },
|
|
new Border { Height = 50 },
|
|
}
|
|
};
|
|
|
|
target.Measure(Size.Infinity);
|
|
target.Arrange(new Rect(target.DesiredSize));
|
|
|
|
Assert.Equal(new Rect(0, 50, 10, 30), target.Children[0].Bounds);
|
|
Assert.Equal(new Rect(0, 0, 10, 50), target.Children[1].Bounds);
|
|
}
|
|
|
|
[Fact]
|
|
public void Invalidates_Arrange_On_Reverse_Order_Change()
|
|
{
|
|
var target = new ReversibleStackPanel
|
|
{
|
|
Children =
|
|
{
|
|
new Border(),
|
|
new Border(),
|
|
}
|
|
};
|
|
|
|
target.Measure(Size.Infinity);
|
|
target.Arrange(new Rect(target.DesiredSize));
|
|
target.ReverseOrder = true;
|
|
|
|
Assert.True(target.IsMeasureValid);
|
|
Assert.False(target.IsArrangeValid);
|
|
}
|
|
}
|
|
}
|
|
|