DatePickerTests.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. using System;
  2. using System.Globalization;
  3. using Terminal.Gui;
  4. using Xunit;
  5. namespace Terminal.Gui.ViewsTests;
  6. public class DatePickerTests {
  7. [Fact]
  8. public void DatePicker_SetFormat_ShouldChangeFormat ()
  9. {
  10. var datePicker = new DatePicker {
  11. Format = "dd/MM/yyyy"
  12. };
  13. Assert.Equal ("dd/MM/yyyy", datePicker.Format);
  14. }
  15. [Fact]
  16. public void DatePicker_Initialize_ShouldSetCurrentDate ()
  17. {
  18. var datePicker = new DatePicker ();
  19. var format = CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
  20. Assert.Equal (DateTime.Now.ToString (format), datePicker.Text);
  21. }
  22. [Fact]
  23. public void DatePicker_SetDate_ShouldChangeText ()
  24. {
  25. var datePicker = new DatePicker ();
  26. var newDate = new DateTime (2024, 1, 15);
  27. var format = CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
  28. datePicker.Date = newDate;
  29. Assert.Equal (newDate.ToString (format), datePicker.Text);
  30. }
  31. [Fact]
  32. public void DatePicker_ShowDatePickerDialog_ShouldChangeDate ()
  33. {
  34. var datePicker = new DatePicker ();
  35. var format = CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
  36. var originalDate = datePicker.Date;
  37. datePicker.MouseEvent (new MouseEvent () { Flags = MouseFlags.Button1Clicked, X = 4, Y = 1 });
  38. var newDate = new DateTime (2024, 2, 20);
  39. datePicker.Date = newDate;
  40. Assert.Equal (newDate.ToString (format), datePicker.Text);
  41. datePicker.Date = originalDate;
  42. }
  43. }