public void TestMillisecondsSinceLastCaretMovement() { InputControl input = new InputControl(); input.ProcessCharacter('H'); int start = Environment.TickCount; int end; do { Thread.Sleep(1); end = Environment.TickCount; } while(start == end); int elapsedMilliseconds = end - start; Assert.GreaterOrEqual( input.MillisecondsSinceLastCaretMovement, elapsedMilliseconds ); }
public void TestDelete() { Screen screen = new Screen(); InputControl input = new InputControl(); screen.Desktop.Children.Add(input); screen.FocusedControl = input; input.ProcessCharacter('T'); input.ProcessCharacter('e'); input.ProcessCharacter('l'); input.ProcessCharacter('l'); input.ProcessCharacter('o'); input.ProcessKeyPress(Keys.Home, false); input.ProcessKeyPress(Keys.Delete, false); input.ProcessCharacter('H'); Assert.AreEqual("Hello", input.Text); }
public void TestCaretMovementByCursor() { Screen screen = new Screen(); InputControl input = new InputControl(); screen.Desktop.Children.Add(input); screen.FocusedControl = input; input.ProcessCharacter('H'); input.ProcessCharacter('e'); input.ProcessCharacter('l'); input.ProcessCharacter('o'); input.ProcessKeyPress(Keys.Left, false); input.ProcessCharacter('l'); input.ProcessKeyPress(Keys.Right, false); input.ProcessCharacter('!'); Assert.AreEqual("Hello!", input.Text); }
public void TestHomeAndEnd() { Screen screen = new Screen(); InputControl input = new InputControl(); screen.Desktop.Children.Add(input); screen.FocusedControl = input; input.ProcessCharacter('W'); input.ProcessCharacter('o'); input.ProcessCharacter('r'); input.ProcessCharacter('l'); input.ProcessCharacter('d'); input.ProcessKeyPress(Keys.Home, false); input.ProcessCharacter('H'); input.ProcessCharacter('e'); input.ProcessCharacter('l'); input.ProcessCharacter('l'); input.ProcessCharacter('o'); input.ProcessCharacter(' '); input.ProcessKeyPress(Keys.End, false); input.ProcessCharacter('!'); Assert.AreEqual("Hello World!", input.Text); }