Browse Source

failing unit test.

pull/8482/head
Dan Walmsley 4 years ago
parent
commit
9be71040c8
  1. 24
      tests/Avalonia.Controls.UnitTests/WindowTests.cs
  2. 4
      tests/Avalonia.UnitTests/MockWindowingPlatform.cs

24
tests/Avalonia.Controls.UnitTests/WindowTests.cs

@ -549,22 +549,33 @@ namespace Avalonia.Controls.UnitTests
screens.Setup(x => x.AllScreens).Returns(new Screen[] { screen1.Object });
screens.Setup(x => x.ScreenFromPoint(It.IsAny<PixelPoint>())).Returns(screen1.Object);
var windowImpl = MockWindowingPlatform.CreateWindowMock();
var windowImpl = MockWindowingPlatform.CreateWindowMock(400, 300);
windowImpl.Setup(x => x.DesktopScaling).Returns(1.75);
windowImpl.Setup(x => x.RenderScaling).Returns(1.75);
windowImpl.Setup(x => x.Screen).Returns(screens.Object);
var clientSize = new Size(400.142, 366);
var clientSize = new Size(400, 300);
bool isShown = false;
windowImpl.Setup(x => x.ClientSize).Returns(() => clientSize);
windowImpl.Setup(x => x.Resize(It.IsAny<Size>(), It.IsAny<PlatformResizeReason>()))
.Callback<Size, PlatformResizeReason>((x, y) =>
{
clientSize = x;
windowImpl.Object.Resized?.Invoke(clientSize, y);
if (x != clientSize)
{
clientSize = x;
windowImpl.Object.Resized?.Invoke(clientSize, y);
}
});
windowImpl.Setup(x => x.FrameSize).Returns(() => clientSize.Inflate(new Thickness(5, 25, 5, 5)));
windowImpl.Setup(x => x.Show(It.IsAny<bool>(), It.IsAny<bool>()))
.Callback<bool, bool>((activate, isDialog) =>
{
isShown = true;
windowImpl.Object.Resized?.Invoke(clientSize, PlatformResizeReason.Unspecified);
});
windowImpl.Setup(x => x.FrameSize).Returns(() => windowImpl.Object.ClientSize.Inflate(new Thickness(5, 25, 5, 5)));
using (UnitTestApplication.Start(TestServices.StyledWindow))
{
@ -575,6 +586,7 @@ namespace Avalonia.Controls.UnitTests
window.Show();
Assert.Equal(new PixelPoint(601, 194), window.Position);
Assert.Equal(new Size(720, 480), window.Bounds.Size);
}
}

4
tests/Avalonia.UnitTests/MockWindowingPlatform.cs

@ -21,11 +21,11 @@ namespace Avalonia.UnitTests
_popupImpl = popupImpl;
}
public static Mock<IWindowImpl> CreateWindowMock()
public static Mock<IWindowImpl> CreateWindowMock(double initialWidth = 800, double initialHeight = 600)
{
var windowImpl = new Mock<IWindowImpl>();
var position = new PixelPoint();
var clientSize = new Size(800, 600);
var clientSize = new Size(initialWidth, initialHeight);
windowImpl.SetupAllProperties();
windowImpl.Setup(x => x.ClientSize).Returns(() => clientSize);

Loading…
Cancel
Save