Browse Source

fix mockwindowplatform and test.

pull/8482/head
Dan Walmsley 4 years ago
parent
commit
0aacec3fae
  1. 25
      tests/Avalonia.Controls.UnitTests/WindowTests.cs
  2. 10
      tests/Avalonia.UnitTests/MockWindowingPlatform.cs

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

@ -553,29 +553,6 @@ namespace Avalonia.Controls.UnitTests
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, 300);
bool isShown = false;
windowImpl.Setup(x => x.Resize(It.IsAny<Size>(), It.IsAny<PlatformResizeReason>()))
.Callback<Size, PlatformResizeReason>((x, y) =>
{
if (x != clientSize)
{
clientSize = x;
windowImpl.Object.Resized?.Invoke(clientSize, y);
}
});
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))
{
@ -586,7 +563,7 @@ namespace Avalonia.Controls.UnitTests
window.Show();
Assert.Equal(new PixelPoint(601, 194), window.Position);
Assert.Equal(new PixelPoint(330, 63), window.Position);
Assert.Equal(new Size(720, 480), window.Bounds.Size);
}
}

10
tests/Avalonia.UnitTests/MockWindowingPlatform.cs

@ -55,12 +55,18 @@ namespace Avalonia.UnitTests
windowImpl.Setup(x => x.Resize(It.IsAny<Size>(), It.IsAny<PlatformResizeReason>()))
.Callback<Size, PlatformResizeReason>((x, y) =>
{
clientSize = x.Constrain(s_screenSize);
windowImpl.Object.Resized?.Invoke(clientSize, y);
var constrainedSize = x.Constrain(s_screenSize);
if (constrainedSize != clientSize)
{
clientSize = constrainedSize;
windowImpl.Object.Resized?.Invoke(clientSize, y);
}
});
windowImpl.Setup(x => x.Show(true, It.IsAny<bool>())).Callback(() =>
{
windowImpl.Object.Resized?.Invoke(windowImpl.Object.ClientSize, PlatformResizeReason.Unspecified);
windowImpl.Object.Activated?.Invoke();
});

Loading…
Cancel
Save