| OLD | NEW |
| 1 #!mojo mojo:sky_viewer |
| 1 <sky> | 2 <sky> |
| 2 <import src="../resources/chai.sky" /> | 3 <script> |
| 3 <import src="../resources/mocha.sky" /> | 4 import "../resources/third_party/unittest/unittest.dart"; |
| 4 <import src="/gen/mojo/services/input_events/public/interfaces/input_event_const
ants.mojom.sky" as="constants" /> | 5 import "../resources/unit.dart"; |
| 5 <import src="/gen/mojo/services/input_events/public/interfaces/input_events.mojo
m.sky" as="events" /> | 6 import "/sky/framework/shell.dart" as shell; |
| 6 <import src="/gen/sky/services/testing/test_harness.mojom.sky" as="harness" /> | 7 import "dart:sky"; |
| 7 <import src="/sky/framework/shell.sky" as="shell" /> | 8 import "package:mojo/services/input_events/public/interfaces/input_event_constan
ts.mojom.dart" as constants; |
| 9 import "package:mojo/services/input_events/public/interfaces/input_events.mojom.
dart" as events; |
| 10 import "package:sky/services/testing/test_harness.mojom.dart" as harness; |
| 8 | 11 |
| 9 <script> | 12 void main() { |
| 10 describe('Sky event sender', function() { | 13 initUnit(); |
| 11 it('should be able to send events', function(done) { | |
| 12 var sky = document.querySelector('sky') | |
| 13 sky.addEventListener('keypress', function(event) { | |
| 14 assert.equal(event.type, 'keypress'); | |
| 15 assert.equal(event.key, 0); | |
| 16 assert.equal(event.charCode, 0x41); | |
| 17 done(); | |
| 18 }); | |
| 19 | 14 |
| 20 var testHarness = shell.connectToService( | 15 test('should be able to send events', () { |
| 21 "mojo:sky_tester", harness.TestHarness); | 16 var sky = document.querySelector('sky'); |
| 22 testHarness.dispatchInputEvent(new events.Event({ | 17 sky.addEventListener('keypress', expectAsync((event) { |
| 23 action: constants.EventType.KEY_PRESSED, | 18 expect(event.type, equals('keypress')); |
| 24 key_data: new events.KeyData({ | 19 expect(event.key, equals(0)); |
| 25 windows_key_code: 0x41, | 20 expect(event.charCode, equals(0x41)); |
| 26 text: 0x41, | |
| 27 unmodified_text: 0x41, | |
| 28 is_char: true, | |
| 29 character: 0x41, | |
| 30 }), | |
| 31 })); | 21 })); |
| 22 |
| 23 var testHarness = new harness.TestHarnessProxy.unbound(); |
| 24 shell.connectToService("mojo:sky_tester", testHarness); |
| 25 var keyData = new events.KeyData(); |
| 26 keyData.windowsKeyCode = 0x41; |
| 27 keyData.text = 0x41; |
| 28 keyData.unmodifiedText = 0x41; |
| 29 keyData.isChar = true; |
| 30 keyData.character = 0x41; |
| 31 var event = new events.Event(); |
| 32 event.action = constants.EventType_KEY_PRESSED; |
| 33 event.keyData = keyData; |
| 34 testHarness.dispatchInputEvent(event); |
| 32 }); | 35 }); |
| 33 }); | 36 } |
| 34 </script> | 37 </script> |
| 35 </sky> | 38 </sky> |
| OLD | NEW |