<?xml version='1.0'?>
<TestDescriptor xmlns="http://castor.exolab.org/Test" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://castor.exolab.org/Test http://castor.exolab.org/Test">
    <Name>Test the required attribute in the field member</Name>
    <Author>Werner Guttmann</Author>
    <Comment>
        The field element allows to specify if an element or an attribute is required
        or not. The aim of this test is to check that the validation is correct, for
        cases where there is more than one attribute.
    </Comment>
    <Category>basic capability</Category>

    <MarshallingTest>
        <Root_Object>Kennel</Root_Object>

        <UnitTestCase>
            <Name>Valid document</Name>
            <Mapping_File>mapping.xml</Mapping_File>
            <Input>dog-complete.xml</Input>
            <GoldFile>dog-complete.xml</GoldFile>
        </UnitTestCase>

        <UnitTestCase>
            <Name>Missing attributes</Name>
            <Mapping_File>mapping.xml</Mapping_File>
            <Input>dog-missing-attributes.xml</Input>
            <Failure exception="org.exolab.castor.xml.MarshalException"
                     FailureStep="unmarshal-reference">true</Failure>
        </UnitTestCase>

        <UnitTestCase>
            <Name>Missing attribute</Name>
            <Mapping_File>mapping.xml</Mapping_File>
            <Input>dog-missing-attribute.xml</Input>
            <Failure exception="org.exolab.castor.xml.MarshalException"
                     FailureStep="unmarshal-reference">true</Failure>
        </UnitTestCase>
    </MarshallingTest>
</TestDescriptor>
