Files
Ursa.Avalonia/tests/Test.Ursa/ButtonGroupTests/ButtonGroupTests.cs

67 lines
1.9 KiB
C#

using Avalonia.Data;
using Ursa.Controls;
namespace Test.Ursa.ButtonGroupTests;
public class ButtonGroupTests
{
[Fact]
public void ButtonGroup_Should_Initialize_With_Default_Values()
{
var buttonGroup = new ButtonGroup();
Assert.Null(buttonGroup.CommandBinding);
Assert.Null(buttonGroup.CommandParameterBinding);
Assert.Null(buttonGroup.ContentBinding);
Assert.NotNull(buttonGroup.Items);
Assert.Empty(buttonGroup.Items);
}
[Fact]
public void ButtonGroup_Should_Set_And_Get_CommandBinding()
{
var buttonGroup = new ButtonGroup();
var binding = new Binding("TestCommand");
buttonGroup.CommandBinding = binding;
Assert.Equal(binding, buttonGroup.CommandBinding);
}
[Fact]
public void ButtonGroup_Should_Set_And_Get_CommandParameterBinding()
{
var buttonGroup = new ButtonGroup();
var binding = new Binding("TestParameter");
buttonGroup.CommandParameterBinding = binding;
Assert.Equal(binding, buttonGroup.CommandParameterBinding);
}
[Fact]
public void ButtonGroup_Should_Set_And_Get_ContentBinding()
{
var buttonGroup = new ButtonGroup();
var binding = new Binding("TestContent");
buttonGroup.ContentBinding = binding;
Assert.Equal(binding, buttonGroup.ContentBinding);
}
[Fact]
public void ButtonGroup_Should_Accept_Items_In_Collection()
{
var buttonGroup = new ButtonGroup();
var item1 = "Item 1";
var item2 = new Avalonia.Controls.Button { Content = "Button Item" };
buttonGroup.Items.Add(item1);
buttonGroup.Items.Add(item2);
Assert.Equal(2, buttonGroup.Items.Count);
Assert.Contains(item1, buttonGroup.Items);
Assert.Contains(item2, buttonGroup.Items);
}
}