mirror of
				https://github.com/lightpanda-io/browser.git
				synced 2025-10-29 15:13:28 +00:00 
			
		
		
		
	add KeyboardEvent tests
				
					
				
			This commit is contained in:
		| @@ -1,22 +1,87 @@ | ||||
| <script src="../testing.js"></script> | ||||
|  | ||||
| <script id=default> | ||||
|   const button = document.createElement("button"); | ||||
|   let event = new KeyboardEvent("test", { key: "a" }); | ||||
|   testing.expectEqual(true, event instanceof KeyboardEvent); | ||||
|   testing.expectEqual(true, event instanceof Event); | ||||
|  | ||||
|   document.addEventListener("keydown", (event) => { | ||||
|     console.log(event.target); | ||||
|   }); | ||||
|   testing.expectEqual("test", event.type); | ||||
|   testing.expectEqual("a", event.key); | ||||
|  | ||||
|   document.addEventListener("DOMContentLoaded", () => { | ||||
|     document.body.appendChild(button); | ||||
|     button.focus(); | ||||
|   }); | ||||
|   testing.expectEqual(0, event.location); | ||||
|   testing.expectEqual(false, event.repeat); | ||||
|   testing.expectEqual(false, event.isComposing); | ||||
|  | ||||
|   testing.expectEqual(true, true); | ||||
|   testing.expectEqual(false, event.ctrlKey); | ||||
|   testing.expectEqual(false, event.shiftKey); | ||||
|   testing.expectEqual(false, event.metaKey); | ||||
|   testing.expectEqual(false, event.altKey); | ||||
| </script> | ||||
|  | ||||
| <script id=keyboardEvent> | ||||
| const keyboardEvent = new KeyboardEvent("a"); | ||||
| console.lp(keyboardEvent.type); | ||||
| <script id=getModifierState> | ||||
|   event = new KeyboardEvent("test", { | ||||
|     altKey: true, | ||||
|     shiftKey: true, | ||||
|     metaKey: true, | ||||
|     ctrlKey: true, | ||||
|   }); | ||||
|  | ||||
| testing.expectEqual(true, true); | ||||
|   testing.expectEqual(true, event.getModifierState("Alt")); | ||||
|   testing.expectEqual(true, event.getModifierState("AltGraph")); | ||||
|   testing.expectEqual(true, event.getModifierState("Control")); | ||||
|   testing.expectEqual(true, event.getModifierState("Shift")); | ||||
|   testing.expectEqual(true, event.getModifierState("Meta")); | ||||
|   testing.expectEqual(true, event.getModifierState("OS")); | ||||
|   testing.expectEqual(true, event.getModifierState("Accel")); | ||||
| </script> | ||||
|  | ||||
| <script id=keyDownListener> | ||||
| event = new KeyboardEvent("keydown", { key: "z" }); | ||||
| let isKeyDown = false; | ||||
|  | ||||
| document.addEventListener("keydown", (e) => { | ||||
|   isKeyDown = true; | ||||
|  | ||||
|   testing.expectEqual(true, e instanceof KeyboardEvent); | ||||
|   testing.expectEqual(true, e instanceof Event); | ||||
|   testing.expectEqual("z", event.key); | ||||
| }); | ||||
|  | ||||
| document.dispatchEvent(event); | ||||
|  | ||||
| testing.expectEqual(true, isKeyDown); | ||||
| </script> | ||||
|  | ||||
| <script id=keyUpListener> | ||||
| event = new KeyboardEvent("keyup", { key: "x" }); | ||||
| let isKeyUp = false; | ||||
|  | ||||
| document.addEventListener("keyup", (e) => { | ||||
|   isKeyUp = true; | ||||
|  | ||||
|   testing.expectEqual(true, e instanceof KeyboardEvent); | ||||
|   testing.expectEqual(true, e instanceof Event); | ||||
|   testing.expectEqual("x", event.key); | ||||
| }); | ||||
|  | ||||
| document.dispatchEvent(event); | ||||
|  | ||||
| testing.expectEqual(true, isKeyUp); | ||||
| </script> | ||||
|  | ||||
| <script id=keyPressListener> | ||||
| event = new KeyboardEvent("keypress", { key: "w" }); | ||||
| let isKeyPress = false; | ||||
|  | ||||
| document.addEventListener("keypress", (e) => { | ||||
|   isKeyPress = true; | ||||
|  | ||||
|   testing.expectEqual(true, e instanceof KeyboardEvent); | ||||
|   testing.expectEqual(true, e instanceof Event); | ||||
|   testing.expectEqual("w", event.key); | ||||
| }); | ||||
|  | ||||
| document.dispatchEvent(event); | ||||
|  | ||||
| testing.expectEqual(true, isKeyPress); | ||||
| </script> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 nikneym
					nikneym