ColorPickerTests.cs 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Xunit;
  7. namespace Terminal.Gui.ViewTests {
  8. public class ColorPickerTests {
  9. [Fact]
  10. public void Constructors ()
  11. {
  12. var colorPicker = new ColorPicker ();
  13. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  14. Assert.Equal (new Point (0, 0), colorPicker.Cursor);
  15. Assert.True (colorPicker.CanFocus);
  16. Assert.Equal (new Rect (0, 0, 32, 5), colorPicker.Frame);
  17. colorPicker = new ColorPicker (5, 10, "Title");
  18. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  19. Assert.Equal (new Point (0, 0), colorPicker.Cursor);
  20. Assert.True (colorPicker.CanFocus);
  21. Assert.Equal (new Rect (5, 10, 32, 5), colorPicker.Frame);
  22. colorPicker = new ColorPicker (new Point (10, 15), "Title");
  23. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  24. Assert.Equal (new Point (0, 0), colorPicker.Cursor);
  25. Assert.True (colorPicker.CanFocus);
  26. Assert.Equal (new Rect (10, 15, 32, 5), colorPicker.Frame);
  27. }
  28. [Fact]
  29. [AutoInitShutdown]
  30. public void KeyBindings_Command ()
  31. {
  32. var colorPicker = new ColorPicker ();
  33. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  34. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorRight, new KeyModifiers ())));
  35. Assert.Equal (Color.Blue, colorPicker.SelectedColor);
  36. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorDown, new KeyModifiers ())));
  37. Assert.Equal (Color.BrightBlue, colorPicker.SelectedColor);
  38. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorLeft, new KeyModifiers ())));
  39. Assert.Equal (Color.DarkGray, colorPicker.SelectedColor);
  40. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorUp, new KeyModifiers ())));
  41. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  42. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorLeft, new KeyModifiers ())));
  43. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  44. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorUp, new KeyModifiers ())));
  45. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  46. }
  47. [Fact]
  48. [AutoInitShutdown]
  49. public void MouseEvents ()
  50. {
  51. var colorPicker = new ColorPicker ();
  52. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  53. Assert.False (colorPicker.MouseEvent (new MouseEvent ()));
  54. Assert.True (colorPicker.MouseEvent (new MouseEvent () { Flags = MouseFlags.Button1Clicked, X = 4, Y = 0 }));
  55. Assert.Equal (Color.Blue, colorPicker.SelectedColor);
  56. }
  57. [Fact]
  58. [AutoInitShutdown]
  59. public void SelectedColorAndCursor ()
  60. {
  61. var colorPicker = new ColorPicker ();
  62. colorPicker.SelectedColor = Color.White;
  63. Assert.Equal (7, colorPicker.Cursor.X);
  64. Assert.Equal (1, colorPicker.Cursor.Y);
  65. colorPicker.SelectedColor = Color.Black;
  66. Assert.Equal (0, colorPicker.Cursor.X);
  67. Assert.Equal (0, colorPicker.Cursor.Y);
  68. colorPicker.Cursor = new Point (7, 1);
  69. Assert.Equal (Color.White, colorPicker.SelectedColor);
  70. colorPicker.Cursor = new Point (0, 0);
  71. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  72. }
  73. }
  74. }