using Avalonia; using Avalonia.Controls; using Avalonia.Controls.Primitives; using Avalonia.Headless; using Avalonia.Headless.XUnit; using Avalonia.Input; using Avalonia.Layout; using Avalonia.LogicalTree; using Avalonia.Threading; using Avalonia.VisualTree; using HeadlessTest.Ursa.TestHelpers; using Ursa.Controls; using DatePicker = Ursa.Controls.DatePicker; namespace HeadlessTest.Ursa.Controls.DateTimePicker; public class DatePickerTests { [AvaloniaFact] public void Click_Opens_Popup() { var window = new Window(); var picker = new DatePicker() { Width = 300, HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top }; window.Content = picker; window.Show(); Assert.False(picker.IsDropdownOpen); Dispatcher.UIThread.RunJobs(); window.MouseDown(new Point(10, 10), MouseButton.Left); Dispatcher.UIThread.RunJobs(); Assert.True(picker.IsDropdownOpen); window.MouseDown(new Point(10, 10), MouseButton.Left); Dispatcher.UIThread.RunJobs(); Assert.True(picker.IsDropdownOpen); } [AvaloniaFact] public void Click_Button_Toggles_Popup() { var window = new Window(); var picker = new DatePicker() { Width = 300, HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top }; window.Content = picker; window.Show(); var button = picker.GetTemplateChildOfType