Browse Source

Add additional failing integration tests.

For problems introduced in #10153.
pull/10265/head
Steven Kirk 3 years ago
parent
commit
2951b80c39
  1. 18
      tests/Avalonia.IntegrationTests.Appium/WindowTests.cs

18
tests/Avalonia.IntegrationTests.Appium/WindowTests.cs

@ -30,9 +30,9 @@ namespace Avalonia.IntegrationTests.Appium
[Theory]
[MemberData(nameof(StartupLocationData))]
public void StartupLocation(Size? size, ShowWindowMode mode, WindowStartupLocation location)
public void StartupLocation(Size? size, ShowWindowMode mode, WindowStartupLocation location, bool canResize)
{
using var window = OpenWindow(size, mode, location);
using var window = OpenWindow(size, mode, location, canResize: canResize);
var info = GetWindowInfo();
if (size.HasValue)
@ -230,10 +230,10 @@ namespace Avalonia.IntegrationTests.Appium
Assert.Equal(new Rgba32(255, 0, 0), centerColor);
}
public static TheoryData<Size?, ShowWindowMode, WindowStartupLocation> StartupLocationData()
public static TheoryData<Size?, ShowWindowMode, WindowStartupLocation, bool> StartupLocationData()
{
var sizes = new Size?[] { null, new Size(400, 300) };
var data = new TheoryData<Size?, ShowWindowMode, WindowStartupLocation>();
var data = new TheoryData<Size?, ShowWindowMode, WindowStartupLocation, bool>();
foreach (var size in sizes)
{
@ -243,7 +243,8 @@ namespace Avalonia.IntegrationTests.Appium
{
if (!(location == WindowStartupLocation.CenterOwner && mode == ShowWindowMode.NonOwned))
{
data.Add(size, mode, location);
data.Add(size, mode, location, true);
data.Add(size, mode, location, false);
}
}
}
@ -311,12 +312,14 @@ namespace Avalonia.IntegrationTests.Appium
Size? size,
ShowWindowMode mode,
WindowStartupLocation location = WindowStartupLocation.Manual,
WindowState state = Controls.WindowState.Normal)
WindowState state = Controls.WindowState.Normal,
bool canResize = true)
{
var sizeTextBox = _session.FindElementByAccessibilityId("ShowWindowSize");
var modeComboBox = _session.FindElementByAccessibilityId("ShowWindowMode");
var locationComboBox = _session.FindElementByAccessibilityId("ShowWindowLocation");
var stateComboBox = _session.FindElementByAccessibilityId("ShowWindowState");
var canResizeCheckBox = _session.FindElementByAccessibilityId("ShowWindowCanResize");
var showButton = _session.FindElementByAccessibilityId("ShowWindow");
if (size.HasValue)
@ -331,6 +334,9 @@ namespace Avalonia.IntegrationTests.Appium
stateComboBox.Click();
_session.FindElementByAccessibilityId($"ShowWindowState{state}").SendClick();
if (canResizeCheckBox.GetIsChecked() != canResize)
canResizeCheckBox.Click();
return showButton.OpenWindowWithClick();
}

Loading…
Cancel
Save