Skip to content

Commit

Permalink
Add unit tests for ButtonBaseDesigner (#11690)
Browse files Browse the repository at this point in the history
* Add unit tests for ButtonBaseDesigner
  • Loading branch information
LeafShi1 authored Jul 23, 2024
1 parent 68ea9d1 commit 2c02ca5
Showing 1 changed file with 56 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.

#nullable enable

using System.Collections;

namespace System.Windows.Forms.Design.Tests;

public sealed class ButtonBaseDesignerTests
{
[Fact]
public void ButtonBaseDesigner_Constructor_Initialize_AutoResizeHandles()
{
using ButtonBaseDesigner buttonBaseDesigner = new();

buttonBaseDesigner.AutoResizeHandles.Should().Be(true);
}

public static TheoryData<IDictionary<string, object>?> IDictionary_TheoryData => new()
{
null,
new Dictionary<string, object>()
};

[Theory]
[MemberData(nameof(IDictionary_TheoryData))]
public void ButtonBaseDesigner_InitializeNewComponent_WithDefaultButton(IDictionary<string, object>? defaultValues)
{
using ButtonBaseDesigner buttonBaseDesigner = new();
using Button button = new();
buttonBaseDesigner.Initialize(button);

buttonBaseDesigner.InitializeNewComponent((IDictionary?)defaultValues);
Assert.False(button.IsHandleCreated);
}

[Theory]
[MemberData(nameof(IDictionary_TheoryData))]
public void ButtonBaseDesigner_InitializeNewComponent_NotInitialized(IDictionary<string, object>? defaultValues)
{
using ButtonBaseDesigner buttonBaseDesigner = new();
Action action = () => buttonBaseDesigner.InitializeNewComponent((IDictionary?)defaultValues);
action.Should().Throw<InvalidOperationException>();
}

[Fact]
public void ButtonBaseDesigner_SnapLinesWithDefaultButton_ShouldReturnExpectedCount()
{
using ButtonBaseDesigner buttonBaseDesigner = new();
using Button button = new();
buttonBaseDesigner.Initialize(button);

buttonBaseDesigner.SnapLines.Count.Should().Be(9);
}
}

0 comments on commit 2c02ca5

Please sign in to comment.