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 |