Esempio n. 1
0
    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
Esempio n. 2
0
    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
Esempio n. 3
0
    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