ColorPickerTests.cs 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  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.ViewsTests {
  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. colorPicker.BeginInit ();
  17. colorPicker.EndInit ();
  18. colorPicker.LayoutSubviews ();
  19. Assert.Equal (new Rect (0, 0, 32, 4), colorPicker.Frame);
  20. }
  21. [Fact]
  22. [AutoInitShutdown]
  23. public void KeyBindings_Command ()
  24. {
  25. var colorPicker = new ColorPicker ();
  26. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  27. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorRight, new KeyModifiers ())));
  28. Assert.Equal (Color.Blue, colorPicker.SelectedColor);
  29. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorDown, new KeyModifiers ())));
  30. Assert.Equal (Color.BrightBlue, colorPicker.SelectedColor);
  31. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorLeft, new KeyModifiers ())));
  32. Assert.Equal (Color.DarkGray, colorPicker.SelectedColor);
  33. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorUp, new KeyModifiers ())));
  34. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  35. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorLeft, new KeyModifiers ())));
  36. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  37. Assert.True (colorPicker.ProcessKey (new KeyEvent (Key.CursorUp, new KeyModifiers ())));
  38. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  39. }
  40. [Fact]
  41. [AutoInitShutdown]
  42. public void MouseEvents ()
  43. {
  44. var colorPicker = new ColorPicker ();
  45. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  46. Assert.False (colorPicker.MouseEvent (new MouseEvent ()));
  47. Assert.True (colorPicker.MouseEvent (new MouseEvent () { Flags = MouseFlags.Button1Clicked, X = 4, Y = 0 }));
  48. Assert.Equal (Color.Blue, colorPicker.SelectedColor);
  49. }
  50. [Fact]
  51. [AutoInitShutdown]
  52. public void SelectedColorAndCursor ()
  53. {
  54. var colorPicker = new ColorPicker ();
  55. colorPicker.SelectedColor = Color.White;
  56. Assert.Equal (7, colorPicker.Cursor.X);
  57. Assert.Equal (1, colorPicker.Cursor.Y);
  58. colorPicker.SelectedColor = Color.Black;
  59. Assert.Equal (0, colorPicker.Cursor.X);
  60. Assert.Equal (0, colorPicker.Cursor.Y);
  61. colorPicker.Cursor = new Point (7, 1);
  62. Assert.Equal (Color.White, colorPicker.SelectedColor);
  63. colorPicker.Cursor = new Point (0, 0);
  64. Assert.Equal (Color.Black, colorPicker.SelectedColor);
  65. }
  66. }
  67. }