Browse Source

add a failing unit test.

pull/10759/head
Dan Walmsley 3 years ago
parent
commit
fe1f9d4c77
  1. 40
      tests/Avalonia.Controls.UnitTests/TreeViewTests.cs

40
tests/Avalonia.Controls.UnitTests/TreeViewTests.cs

@ -1091,6 +1091,46 @@ namespace Avalonia.Controls.UnitTests
Assert.True(called);
}
}
[Fact]
public void SelectedItem_Should_Be_Valid_When_SelectedItemChanged_Event_Raised()
{
using (Application())
{
var tree = CreateTestTreeData();
var target = new TreeView
{
Template = CreateTreeViewTemplate(),
ItemsSource = tree,
};
var visualRoot = new TestRoot();
visualRoot.Child = target;
CreateNodeDataTemplate(target);
ApplyTemplates(target);
ExpandAll(target);
var item = tree[0].Children[1].Children[0];
var container = (TreeViewItem)target.TreeContainerFromItem(item);
Assert.NotNull(container);
var called = false;
target.SelectionChanged += (s, e) =>
{
Assert.Same(item, e.AddedItems[0]);
Assert.Same(item, target.SelectedItem);
called = true;
};
_mouse.Click(container);
Assert.Equal(item, target.SelectedItem);
Assert.True(container.IsSelected);
Assert.True(called);
}
}
[Fact]
public void Bound_SelectedItem_Should_Not_Be_Cleared_when_Changing_Selection()

Loading…
Cancel
Save