Index: headless/lib/browser/client_api_generator_unittest.py |
diff --git a/headless/lib/browser/client_api_generator_unittest.py b/headless/lib/browser/client_api_generator_unittest.py |
index f3609d490f297a13364f6c8b00271b459f712c69..433d0d837b871b51cfd556bc43467273ffe1ddb4 100644 |
--- a/headless/lib/browser/client_api_generator_unittest.py |
+++ b/headless/lib/browser/client_api_generator_unittest.py |
@@ -300,6 +300,49 @@ class ClientApiGeneratorTest(unittest.TestCase): |
types = json_api['domains'][0]['types'] |
self.assertListEqual(types, expected_types) |
+ def test_SynthesizeEventTypes(self): |
+ json_api = { |
+ 'domains': [ |
+ { |
+ 'domain': 'domain', |
+ 'events': [ |
+ { |
+ 'name': 'TestEvent', |
+ 'parameters': [ |
+ {'name': 'p1', 'type': 'number'}, |
+ {'name': 'p2', 'type': 'integer'}, |
+ {'name': 'p3', 'type': 'boolean'}, |
+ {'name': 'p4', 'type': 'string'}, |
+ {'name': 'p5', 'type': 'any'}, |
+ {'name': 'p6', 'type': 'object', '$ref': 'TestType'}, |
+ ] |
+ }, |
+ { |
+ 'name': 'TestEventWithNoParams', |
+ } |
+ ] |
+ } |
+ ] |
+ } |
+ expected_types = [ |
+ { |
+ 'type': 'object', |
+ 'id': 'TestEventParams', |
+ 'description': 'Parameters for the TestEvent event.', |
+ 'properties': [ |
+ {'type': 'number', 'name': 'p1'}, |
+ {'type': 'integer', 'name': 'p2'}, |
+ {'type': 'boolean', 'name': 'p3'}, |
+ {'type': 'string', 'name': 'p4'}, |
+ {'type': 'any', 'name': 'p5'}, |
+ {'type': 'object', 'name': 'p6', '$ref': 'TestType'} |
+ ] |
+ } |
+ ] |
+ client_api_generator.SynthesizeEventTypes(json_api) |
+ types = json_api['domains'][0]['types'] |
+ self.assertListEqual(types, expected_types) |
+ |
def test_Generate(self): |
json_api = { |
'domains': [ |