public void CalendarAccessibleObject_CalendarHeaderAccessibleObject_IsNotNull() { using MonthCalendar control = new MonthCalendar(); control.CreateControl(); var controlAccessibleObject = (MonthCalendarAccessibleObject)control.AccessibilityObject; CalendarAccessibleObject calendar = controlAccessibleObject.CalendarsAccessibleObjects.First?.Value; Assert.NotNull(calendar.CalendarHeaderAccessibleObject); Assert.True(control.IsHandleCreated); }
public void CalendarAccessibleObject_Bounds_ReturnsExpectedSize() { using MonthCalendar control = new MonthCalendar(); control.CreateControl(); var controlAccessibleObject = (MonthCalendarAccessibleObject)control.AccessibilityObject; CalendarAccessibleObject calendar = controlAccessibleObject.CalendarsAccessibleObjects.First?.Value; Rectangle bounds = calendar.Bounds; Assert.Equal(217, bounds.Width); Assert.Equal(135, bounds.Height); Assert.True(control.IsHandleCreated); }
public ScenarioResult MonthCalendar_GetFromPoint_ReturnsCorrectValue(TParams p) { using var wrapper = new MonthCalendarWrapper(this); Application.DoEvents(); MonthCalendarAccessibleObject accessibleObject = (MonthCalendarAccessibleObject)wrapper.Calendar.AccessibilityObject; CalendarAccessibleObject calendarAccessibleObject = new CalendarAccessibleObject(accessibleObject, 0, "Test name"); MCHITTESTINFO info = new MCHITTESTINFO { uHit = MCHT.CALENDARDAY, iRow = 0 }; Application.DoEvents(); MonthCalendarChildAccessibleObject cell = calendarAccessibleObject.GetChildFromPoint(info); return(new ScenarioResult(cell != null)); }
public CalendarBodyAccessibleObject(CalendarAccessibleObject calendarAccessibleObject, MonthCalendarAccessibleObject monthCalendarAccessibleObject, int calendarIndex) : base(monthCalendarAccessibleObject) { _calendarAccessibleObject = calendarAccessibleObject; _monthCalendarAccessibleObject = monthCalendarAccessibleObject; _calendarIndex = calendarIndex; // Name and RuntimeId don't change if the calendar date range is not changed, // otherwise the calendar accessibility tree will be rebuilt. // So save these values one time to avoid sending messages to Windows every time // or recreating new structures and making extra calculations. _initName = _monthCalendarAccessibleObject.GetCalendarPartText(MCGIP.CALENDARHEADER, _calendarIndex); _initRuntimeId = new int[] { _calendarAccessibleObject.RuntimeId[0], _calendarAccessibleObject.RuntimeId[1], _calendarAccessibleObject.RuntimeId[2], GetChildId() }; }
public void CalendarAccessibleObject_Row_IsExpected(int calendarIndex, int expected) { using MonthCalendar control = new MonthCalendar(); control.Size = new Size(450, 450); control.CreateControl(); var controlAccessibleObject = (MonthCalendarAccessibleObject)control.AccessibilityObject; LinkedListNode <CalendarAccessibleObject> calendarNode = controlAccessibleObject.CalendarsAccessibleObjects.First; for (int i = 1; i <= calendarIndex; i++) { calendarNode = calendarNode.Next; } Assert.NotNull(calendarNode); CalendarAccessibleObject calendar = calendarNode.Value; Assert.Equal(expected, calendar.Row); Assert.True(control.IsHandleCreated); }
public void CalendarAccessibleObject_DateRange_IsExpected_ForSpecificCalendar_InMonthView(int calendarIndex, SelectionRange expected) { using MonthCalendar control = new MonthCalendar(); control.FirstDayOfWeek = Day.Sunday; control.Size = new Size(450, 450); control.SelectionStart = new DateTime(2021, 1, 1); control.CreateControl(); var controlAccessibleObject = (MonthCalendarAccessibleObject)control.AccessibilityObject; LinkedListNode <CalendarAccessibleObject> calendarNode = controlAccessibleObject.CalendarsAccessibleObjects.First; for (int i = 1; i <= calendarIndex; i++) { calendarNode = calendarNode.Next; } Assert.NotNull(calendarNode); CalendarAccessibleObject calendar = calendarNode.Value; Assert.Equal(expected.Start, calendar.DateRange.Start); Assert.Equal(expected.End, calendar.DateRange.End); Assert.True(control.IsHandleCreated); }