def test_render_enum(self): enum = Enum('Number', value_names=['ONE', 'TWO']) module = Module('test.module') module.add_definition(enum) module.link() generator = JavaGenerator('/dev/null') code = generator._render(enum) assert code
def test_render_interface(self): exc = Message('Exception', is_exception=True) iface = Interface('Interface', exc=exc) iface.create_method('method0', NativeType.INT32, [('arg', NativeType.INT32)]) iface.create_method('method1', NativeType.STRING, [('name', NativeType.STRING)]) module = Module('test.module') module.add_definition(exc) module.add_definition(iface) module.link() generator = JavaGenerator('/dev/null') code = generator._render(iface) assert code
def test_render_message(self): enum = Enum('Type') subtype = enum.create_value('SUBTYPE') base = Message('Base') base.create_field('type', enum, is_discriminator=True) msg = Message('Message', base=base, discriminator_value=subtype) msg.create_field('field', NativeType.BOOL) module = Module('test.module') module.add_definition(enum) module.add_definition(base) module.add_definition(msg) module.link() generator = JavaGenerator('/dev/null') code = generator._render(msg) assert code