Browse Source

Add judgement for test ListView_Click_On_Second_Column_Does_Not_Alter_CheckBoxesAsync (#13712)

<!-- Please read CONTRIBUTING.md before submitting a pull request -->

Releated #13288 


## Proposed changes

- Add judgement for test
ListView_Click_On_Second_Column_Does_Not_Alter_CheckBoxesAsync

###### Microsoft Reviewers: [Open in
CodeFlow](https://microsoft.github.io/open-pr/?codeflow=https://github.com/dotnet/winforms/pull/13712)
pull/13707/merge
Leaf Shi 2 days ago
committed by GitHub
parent
commit
770b5a9825
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 43
      src/test/integration/UIIntegrationTests/ListViewTests.cs

43
src/test/integration/UIIntegrationTests/ListViewTests.cs

@ -537,7 +537,12 @@ public class ListViewTests : ControlTestBase
{
await RunTestAsync(async (form, listView) =>
{
listView.BeginUpdate();
InitializeItems(listView, View.Details, virtualModeEnabled: false, checkBoxesEnabled: true);
listView.EndUpdate();
Assert.True(listView.Items.Count > 0,
$"Expected ListView to contain at least one item, but found {listView.Items.Count}.");
foreach (ListViewItem item in listView.Items)
{
@ -552,24 +557,26 @@ public class ListViewTests : ControlTestBase
Application.DoEvents();
});
Assert.True(listView.Items.Count > 0,
$"Expected ListView to contain at least one item, but found {listView.Items.Count}.");
Assert.True(listView.Items[0].SubItems.Count > 1,
$"Expected first item to have more than one subitem, but found {listView.Items[0].SubItems.Count}.");
Point listViewCenter = GetCenter(listView.RectangleToScreen(listView.Items[0].SubItems[1].Bounds));
await MoveMouseAsync(form, listViewCenter);
await InputSimulator.SendAsync(
form,
inputSimulator => inputSimulator.Keyboard.KeyDown(VIRTUAL_KEY.VK_SHIFT)
.Mouse.LeftButtonClick());
listViewCenter = GetCenter(listView.RectangleToScreen(listView.Items[2].SubItems[1].Bounds));
await MoveMouseAsync(form, listViewCenter);
await InputSimulator.SendAsync(
form,
inputSimulator => inputSimulator.Mouse.LeftButtonClick()
.Keyboard.KeyUp(VIRTUAL_KEY.VK_SHIFT));
if (listView.Items.Count > 0 && listView.Items[0].SubItems is not null && listView.Items[0].SubItems.Count > 1)
{
Point listViewCenter = GetCenter(listView.RectangleToScreen(listView.Items[0].SubItems[1].Bounds));
await MoveMouseAsync(form, listViewCenter);
await InputSimulator.SendAsync(
form,
inputSimulator => inputSimulator.Keyboard.KeyDown(VIRTUAL_KEY.VK_SHIFT)
.Mouse.LeftButtonClick());
listViewCenter = GetCenter(listView.RectangleToScreen(listView.Items[2].SubItems[1].Bounds));
await MoveMouseAsync(form, listViewCenter);
await InputSimulator.SendAsync(
form,
inputSimulator => inputSimulator.Mouse.LeftButtonClick()
.Keyboard.KeyUp(VIRTUAL_KEY.VK_SHIFT));
}
else
{
throw new InvalidOperationException("ListView refresh failed: insufficient items or subitems.");
}
foreach (ListViewItem item in listView.Items)
{

Loading…
Cancel
Save