public void ButtonBase_CreateAccessibilityInstance_InvokeWithRole_ReturnsExpected(bool createControl, bool defaultRole, AccessibleRole expectedAccessibleRole) { using var control = new SubButtonBase(); if (!defaultRole) { control.AccessibleRole = AccessibleRole.HelpBalloon; } if (createControl) { control.CreateControl(); } Assert.Equal(createControl, control.IsHandleCreated); ButtonBase.ButtonBaseAccessibleObject instance = Assert.IsType <ButtonBase.ButtonBaseAccessibleObject>(control.CreateAccessibilityInstance()); Assert.NotNull(instance); Assert.Same(control, instance.Owner); Assert.Equal(expectedAccessibleRole, instance.Role); Assert.NotSame(control.CreateAccessibilityInstance(), instance); Assert.NotSame(control.AccessibilityObject, instance); // TODO: ControlAccessibleObject shouldn't force handle creation, tracked in https://github.com/dotnet/winforms/issues/3062 Assert.True(control.IsHandleCreated); }
public void ButtonBase_CreateAccessibilityInstance_InvokeIButtonControlDoDefaultAction_CallsOnClick(bool createControl) { using var control = new SubButtonBase(); if (createControl) { control.CreateControl(); } Assert.Equal(createControl, control.IsHandleCreated); int callCount = 0; control.Click += (sender, e) => { Assert.Same(control, sender); Assert.Same(EventArgs.Empty, e); callCount++; }; int performClickCallCount = 0; control.PerformClickAction = () => performClickCallCount++; var buttonBaseAccessibleObject = new ButtonBase.ButtonBaseAccessibleObject(control); buttonBaseAccessibleObject.DoDefaultAction(); Assert.Equal(1, callCount); Assert.Equal(0, performClickCallCount); // TODO: ControlAccessibleObject shouldn't force handle creation, tracked in https://github.com/dotnet/winforms/issues/3062 Assert.True(control.IsHandleCreated); }
public void ButtonBaseAccessibleObject_State_is_correct(FlatStyle flatStyle, bool createControl, bool mouseIsDown, AccessibleStates expectedAccessibleState) { using var button = new SubButtonBase() { FlatStyle = flatStyle }; if (createControl) { button.CreateControl(); } Assert.Equal(createControl, button.IsHandleCreated); if (mouseIsDown) { button.OnMouseDown(new MouseEventArgs(MouseButtons.Left, 1, 0, 0, 0)); } var buttonBaseAccessibleObject = new ButtonBase.ButtonBaseAccessibleObject(button); Assert.Equal(expectedAccessibleState, buttonBaseAccessibleObject.State); // TODO: ControlAccessibleObject shouldn't force handle creation, tracked in https://github.com/dotnet/winforms/issues/3062 Assert.True(button.IsHandleCreated); }
public void ButtonBase_CreateAccessibilityInstance_InvokeWithRole_ReturnsExpected(bool createControl, bool defaultRole, AccessibleRole expectedAccessibleRole) { using var control = new SubButtonBase(); if (!defaultRole) { control.AccessibleRole = AccessibleRole.HelpBalloon; } if (createControl) { control.CreateControl(); } Assert.Equal(createControl, control.IsHandleCreated); ButtonBase.ButtonBaseAccessibleObject instance = Assert.IsType <ButtonBase.ButtonBaseAccessibleObject>(control.CreateAccessibilityInstance()); Assert.NotNull(instance); Assert.Same(control, instance.Owner); Assert.Equal(expectedAccessibleRole, instance.Role); Assert.NotSame(control.CreateAccessibilityInstance(), instance); Assert.NotSame(control.AccessibilityObject, instance); Assert.Equal(createControl, control.IsHandleCreated); }
public void ButtonBase_CreateAccessibilityInstance_InvokeIButtonControlDoDefaultAction_CallsOnClick(bool createControl, int expectedCallCount) { using var control = new SubButtonBase(); if (createControl) { control.CreateControl(); } int callCount = 0; control.Click += (sender, e) => { Assert.Same(control, sender); Assert.Same(EventArgs.Empty, e); callCount++; }; int performClickCallCount = 0; control.PerformClickAction = () => performClickCallCount++; var buttonBaseAccessibleObject = new ButtonBase.ButtonBaseAccessibleObject(control); buttonBaseAccessibleObject.DoDefaultAction(); Assert.Equal(expectedCallCount, callCount); Assert.Equal(0, performClickCallCount); Assert.Equal(createControl, control.IsHandleCreated); }
public void ButtonBase_CreateAccessibilityInstance_InvokeWithDefaultRole_ReturnsExpected_ForAllFlatStyles_IfControlIsCreated(FlatStyle flatStyle) { using var control = new SubButtonBase() { FlatStyle = flatStyle }; control.CreateControl(); ButtonBase.ButtonBaseAccessibleObject instance = Assert.IsType <ButtonBase.ButtonBaseAccessibleObject>(control.CreateAccessibilityInstance()); Assert.Equal(AccessibleRole.Client, instance.Role); Assert.True(control.IsHandleCreated); }
public void ButtonBaseBoxAccessibleObject_ControlType_IsPane_IfAccessibleRoleIsDefault(bool createControl, AccessibleRole expectedRole) { using ButtonBase buttonBase = new SubButtonBase(); // AccessibleRole is not set = Default if (createControl) { buttonBase.CreateControl(); } AccessibleObject accessibleObject = buttonBase.AccessibilityObject; object actual = accessibleObject.GetPropertyValue(UiaCore.UIA.ControlTypePropertyId); Assert.Equal(expectedRole, accessibleObject.Role); Assert.Equal(UiaCore.UIA.PaneControlTypeId, actual); Assert.Equal(createControl, buttonBase.IsHandleCreated); }
public void ButtonBaseAccessibleObject_State_is_correct(FlatStyle flatStyle, bool createControl, bool mouseIsDown, AccessibleStates expectedAccessibleState) { using var button = new SubButtonBase() { FlatStyle = flatStyle }; if (createControl) { button.CreateControl(); } Assert.Equal(createControl, button.IsHandleCreated); if (mouseIsDown) { button.OnMouseDown(new MouseEventArgs(MouseButtons.Left, 1, 0, 0, 0)); } var buttonBaseAccessibleObject = new ButtonBase.ButtonBaseAccessibleObject(button); Assert.Equal(expectedAccessibleState, buttonBaseAccessibleObject.State); Assert.Equal(createControl, button.IsHandleCreated); }