Browse Source

fix tests and and fixes.

pull/1497/head
Dan Walmsley 8 years ago
parent
commit
2c9f3ede54
  1. 5
      src/Avalonia.Controls/Border.cs
  2. 7
      tests/Avalonia.Controls.UnitTests/BorderTests.cs
  3. 12
      tests/Avalonia.Controls.UnitTests/Presenters/ContentPresenterTests_Layout.cs

5
src/Avalonia.Controls/Border.cs

@ -110,9 +110,8 @@ namespace Avalonia.Controls
{
if (Child != null)
{
var padding = Padding + BorderThickness;
var arrangeRect = new Rect(finalSize).Deflate(padding);
Child.Arrange(new Rect(arrangeRect.X, arrangeRect.Y, Math.Max(0, arrangeRect.Width), Math.Max(0, arrangeRect.Height)));
var padding = Padding + BorderThickness;
Child.Arrange(new Rect(finalSize).Deflate(padding));
}
_borderRenderHelper.Update(finalSize, BorderThickness, CornerRadius);

7
tests/Avalonia.Controls.UnitTests/BorderTests.cs

@ -31,17 +31,16 @@ namespace Avalonia.Controls.UnitTests
Padding = new Thickness(6),
MaxHeight = 12,
MaxWidth = 12,
Content = content = new Border
Child = content = new Border
{
Height = 0,
Width = 0
}
};
target.Measure(new Size(100, 100));
target.Arrange(new Rect(0, 0, 100, 100));
Assert.Equal(new Rect(0, 0, 0, 0), content.Bounds);
Assert.Equal(new Rect(6, 6, 0, 0), content.Bounds);
}
}
}

12
tests/Avalonia.Controls.UnitTests/Presenters/ContentPresenterTests_Layout.cs

@ -217,21 +217,23 @@ namespace Avalonia.Controls.UnitTests.Presenters
Border content;
var target = new ContentPresenter
{
Padding = 32,
Padding = new Thickness(32),
MaxHeight = 32,
MaxWidth = 32,
HorizontalContentAlignment = HorizontalAlignment.Center,
VerticalContentAlignment = VerticalAlignment.Center,
Content = content = new Border
{
MinWidth = 16,
MinHeight = 16,
Height = 0,
Width = 0,
},
};
target.UpdateChild();
target.Measure(new Size(100, 100));
target.Arrange(new Rect(0, 0, 100, 100));
Assert.Equal(new Rect(0, 0, 0, 0), content.Bounds);
Assert.Equal(new Rect(48, 48, 0, 0), content.Bounds);
}
}
}
Loading…
Cancel
Save