public void SelectAll_Handles_Duplicate_Items() { var target = new TestSelector { Template = Template(), Items = new[] { "Foo", "Bar", "Baz", "Foo", "Bar", "Baz" }, SelectionMode = SelectionMode.Multiple, }; target.ApplyTemplate(); target.Presenter.ApplyTemplate(); target.SelectAll(); Assert.Equal(new[] { "Foo", "Bar", "Baz", "Foo", "Bar", "Baz" }, target.SelectedItems); }
public void SelectAll_Sets_SelectedIndex_And_SelectedItem() { var target = new TestSelector { Template = Template(), Items = new[] { "Foo", "Bar", "Baz" }, SelectionMode = SelectionMode.Multiple, }; target.ApplyTemplate(); target.Presenter.ApplyTemplate(); target.SelectAll(); Assert.Equal(0, target.SelectedIndex); Assert.Equal("Foo", target.SelectedItem); }
public void SelectAll_Raises_SelectionChanged_Event() { var target = new TestSelector { Template = Template(), Items = new[] { "Foo", "Bar", "Baz" }, SelectionMode = SelectionMode.Multiple, }; target.ApplyTemplate(); target.Presenter.ApplyTemplate(); SelectionChangedEventArgs receivedArgs = null; target.SelectionChanged += (_, args) => receivedArgs = args; target.SelectAll(); Assert.NotNull(receivedArgs); Assert.Equal(target.Items, receivedArgs.AddedItems); Assert.Empty(receivedArgs.RemovedItems); }