NumericUpDownTests.cs 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. using System.ComponentModel;
  2. using Xunit.Abstractions;
  3. namespace Terminal.Gui.ViewsTests;
  4. public class NumericUpDownTests (ITestOutputHelper _output)
  5. {
  6. [Fact]
  7. public void WhenCreated_ShouldHaveDefaultValues_int ()
  8. {
  9. NumericUpDown<int> numericUpDown = new ();
  10. Assert.Equal (0, numericUpDown.Value);
  11. Assert.Equal (int.MinValue, numericUpDown.Minimum);
  12. Assert.Equal (int.MaxValue, numericUpDown.Maximum);
  13. Assert.Equal (1, numericUpDown.Increment);
  14. }
  15. [Fact]
  16. public void WhenCreated_ShouldHaveDefaultValues_long ()
  17. {
  18. NumericUpDown<long> numericUpDown = new ();
  19. Assert.Equal (0, numericUpDown.Value);
  20. Assert.Equal (long.MinValue, numericUpDown.Minimum);
  21. Assert.Equal (long.MaxValue, numericUpDown.Maximum);
  22. Assert.Equal (1, numericUpDown.Increment);
  23. }
  24. [Fact]
  25. public void WhenCreated_ShouldHaveDefaultValues_float ()
  26. {
  27. NumericUpDown<float> numericUpDown = new ();
  28. Assert.Equal (0F, numericUpDown.Value);
  29. Assert.Equal (float.MinValue, numericUpDown.Minimum);
  30. Assert.Equal (float.MaxValue, numericUpDown.Maximum);
  31. Assert.Equal (1.0F, numericUpDown.Increment);
  32. }
  33. [Fact]
  34. public void WhenCreated_ShouldHaveDefaultValues_double ()
  35. {
  36. NumericUpDown<double> numericUpDown = new ();
  37. Assert.Equal (0F, numericUpDown.Value);
  38. Assert.Equal (double.MinValue, numericUpDown.Minimum);
  39. Assert.Equal (double.MaxValue, numericUpDown.Maximum);
  40. Assert.Equal (1.0F, numericUpDown.Increment);
  41. }
  42. [Fact]
  43. public void WhenCreated_ShouldHaveDefaultValues_decimal ()
  44. {
  45. NumericUpDown<decimal> numericUpDown = new ();
  46. Assert.Equal (0, numericUpDown.Value);
  47. Assert.Equal (decimal.MinValue, numericUpDown.Minimum);
  48. Assert.Equal (decimal.MaxValue, numericUpDown.Maximum);
  49. Assert.Equal (1, numericUpDown.Increment);
  50. }
  51. [Fact]
  52. public void WhenCreatedWithCustomValues_ShouldHaveCustomValues_int ()
  53. {
  54. var numericUpDown = new NumericUpDown<int> ()
  55. {
  56. Value = 10,
  57. Minimum = 5,
  58. Maximum = 15,
  59. Increment = 2
  60. };
  61. Assert.Equal (10, numericUpDown.Value);
  62. Assert.Equal (5, numericUpDown.Minimum);
  63. Assert.Equal (15, numericUpDown.Maximum);
  64. Assert.Equal (2, numericUpDown.Increment);
  65. }
  66. [Fact]
  67. public void WhenCreatedWithCustomValues_ShouldHaveCustomValues_float ()
  68. {
  69. var numericUpDown = new NumericUpDown<float> ()
  70. {
  71. Value = 10.5F,
  72. Minimum = 5.5F,
  73. Maximum = 15.5F,
  74. Increment = 2.5F
  75. };
  76. Assert.Equal (10.5F, numericUpDown.Value);
  77. Assert.Equal (5.5F, numericUpDown.Minimum);
  78. Assert.Equal (15.5F, numericUpDown.Maximum);
  79. Assert.Equal (2.5F, numericUpDown.Increment);
  80. }
  81. [Fact]
  82. public void NumericUpDown_WhenCreatedWithInvalidType_ShouldThrowInvalidOperationException ()
  83. {
  84. Assert.Throws<InvalidOperationException> (() => new NumericUpDown<string> ());
  85. }
  86. [Fact]
  87. public void NumericUpDown_WhenCreatedWithInvalidTypeObject_ShouldNotThrowInvalidOperationException ()
  88. {
  89. var numericUpDown = new NumericUpDown<object> ();
  90. Assert.Equal (0, numericUpDown.Value);
  91. Assert.Equal (0, numericUpDown.Minimum);
  92. Assert.Equal (100, numericUpDown.Maximum);
  93. Assert.Equal (1, numericUpDown.Increment);
  94. }
  95. [Fact]
  96. public void NumericUpDown_WhenCreatedWithInvalidTypeObjectAndCustomValues_ShouldHaveCustomValues ()
  97. {
  98. var numericUpDown = new NumericUpDown<object> ()
  99. {
  100. Value = 10,
  101. Minimum = 5,
  102. Maximum = 15,
  103. Increment = 2
  104. };
  105. Assert.Equal (10, numericUpDown.Value);
  106. Assert.Equal (5, numericUpDown.Minimum);
  107. Assert.Equal (15, numericUpDown.Maximum);
  108. Assert.Equal (2, numericUpDown.Increment);
  109. }
  110. [Fact]
  111. public void NumericUpDown_WhenCreated_ShouldHaveDefaultWidthAndHeight_int ()
  112. {
  113. var numericUpDown = new NumericUpDown<int> ();
  114. numericUpDown.SetRelativeLayout(Application.Screen.Size);
  115. Assert.Equal (5, numericUpDown.Frame.Width);
  116. Assert.Equal (1, numericUpDown.Frame.Height);
  117. }
  118. [Fact]
  119. public void NumericUpDown_WhenCreated_ShouldHaveDefaultWidthAndHeight_float ()
  120. {
  121. var numericUpDown = new NumericUpDown<float> ();
  122. numericUpDown.SetRelativeLayout (Application.Screen.Size);
  123. Assert.Equal (5, numericUpDown.Frame.Width);
  124. Assert.Equal (1, numericUpDown.Frame.Height);
  125. }
  126. [Fact]
  127. public void NumericUpDown_WhenCreated_ShouldHaveDefaultUpDownButtons ()
  128. {
  129. var numericUpDown = new NumericUpDown<int> ();
  130. // Assert.Equal (1, numericUpDown
  131. }
  132. }