public void ShouldReportKeyCodeOfArrowKeys()
{
driver.Url = javascriptPage;
IWebElement result = driver.FindElement(By.Id("result"));
IWebElement element = driver.FindElement(By.Id("keyReporter"));
element.SendKeys(Keys.ArrowDown);
Assert.AreEqual(result.Text.Trim(), "down: 40 press: 40 up: 40");
element.SendKeys(Keys.ArrowUp);
Assert.AreEqual(result.Text.Trim(), "down: 38 press: 38 up: 38");
element.SendKeys(Keys.ArrowLeft);
Assert.AreEqual(result.Text.Trim(), "down: 37 press: 37 up: 37");
element.SendKeys(Keys.ArrowRight);
Assert.AreEqual(result.Text.Trim(), "down: 39 press: 39 up: 39");
// And leave no rubbish/printable keys in the "keyReporter"
Assert.AreEqual(element.Value, "");
}