Browse Source

fix tests and and fixes.

pull/1497/head
Dan Walmsley 9 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) if (Child != null)
{ {
var padding = Padding + BorderThickness; var padding = Padding + BorderThickness;
var arrangeRect = new Rect(finalSize).Deflate(padding); Child.Arrange(new Rect(finalSize).Deflate(padding));
Child.Arrange(new Rect(arrangeRect.X, arrangeRect.Y, Math.Max(0, arrangeRect.Width), Math.Max(0, arrangeRect.Height)));
} }
_borderRenderHelper.Update(finalSize, BorderThickness, CornerRadius); _borderRenderHelper.Update(finalSize, BorderThickness, CornerRadius);

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

@ -31,17 +31,16 @@ namespace Avalonia.Controls.UnitTests
Padding = new Thickness(6), Padding = new Thickness(6),
MaxHeight = 12, MaxHeight = 12,
MaxWidth = 12, MaxWidth = 12,
Content = content = new Border Child = content = new Border
{ {
Height = 0, Height = 0,
Width = 0 Width = 0
} }
}; };
target.Measure(new Size(100, 100));
target.Arrange(new Rect(0, 0, 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; Border content;
var target = new ContentPresenter var target = new ContentPresenter
{ {
Padding = 32, Padding = new Thickness(32),
MaxHeight = 32, MaxHeight = 32,
MaxWidth = 32, MaxWidth = 32,
HorizontalContentAlignment = HorizontalAlignment.Center,
VerticalContentAlignment = VerticalAlignment.Center,
Content = content = new Border Content = content = new Border
{ {
MinWidth = 16, Height = 0,
MinHeight = 16, Width = 0,
}, },
}; };
target.UpdateChild(); target.UpdateChild();
target.Measure(new Size(100, 100));
target.Arrange(new Rect(0, 0, 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