Beispiel #1
0
def test_size_with_parent_override():
    template = XMLTemplateParser("""
        <template name="template0">
            <layout name="layout0">
                <area name="area0" size="16">
                    <field name="field1_size" size="4"></field>
                </area>
            </layout>
        </template>""").parse()
    template_provider = TemplateProvider(template)
    data_provider = DataProvider(io.BytesIO(bytes([0x04, 0x00, 0x00, 0x00])))
    template.binding_context = BindingContext(template_provider, data_provider)
    assert template.size == 16
Beispiel #2
0
def test_size_with_resolvable_values():
    template = XMLTemplateParser("""
        <template name="template0">
            <layout name="layout0">
                <area name="area0">
                    <field name="field1_size" size="4"></field>
                    <field name="field1" size="{field1_size, byteorder=little}"></field>
                </area>
            </layout>
        </template>""").parse()
    template_provider = TemplateProvider(template)
    data_provider = DataProvider(io.BytesIO(bytes([0x04, 0x00, 0x00, 0x00])))
    template.binding_context = BindingContext(template_provider, data_provider)
    assert template.size == 8