1<!DOCTYPE HTML> 2<html> 3<script src='test.js'></script> 4<script src='dispatch_context_menu_event.js'></script> 5<script> 6 7function testContextMenuEvent() { 8 var elem = document.querySelector('div'); 9 var capturedEvent = null; 10 elem.addEventListener('contextmenu', function(e) { capturedEvent = e}); 11 var x = elem.offsetLeft + 1; 12 var y = elem.offsetTop + 1; 13 dispatchContextMenuEvent(x, y, ModifierMask.CTRL | ModifierMask.SHIFT); 14 assert(capturedEvent != null); 15 assertEquals(x, capturedEvent.x); 16 assertEquals(y, capturedEvent.y); 17 assertEquals('contextmenu', capturedEvent.type); 18 assertEquals(2, capturedEvent.button); 19 assertEquals(true, capturedEvent.ctrlKey); 20 assertEquals(true, capturedEvent.shiftKey); 21 assertEquals(false, capturedEvent.altKey); 22 assertEquals(false, capturedEvent.metaKey); 23} 24 25function testCannotDispatchEventAtBadLocation() { 26 try { 27 dispatchContextMenuEvent(-1, -1, 0); 28 assert(false); 29 } catch (e) { 30 } 31} 32 33</script> 34<body> 35<div>DIV</div> 36</body> 37</html> 38