TEUCHOS_UNIT_TEST( ParameterList, XMLDuplicatedSublists )
 {
   ParameterList pl;
   TEST_THROW( updateParametersFromXmlFile(filename, inOutArg(pl) ), DuplicateParameterSublist );
   TEST_THROW( getParametersFromXmlFile(filename), DuplicateParameterSublist );
   TEST_THROW( getParametersFromXmlFile(filename,null), DuplicateParameterSublist );
   //
   std::ifstream fin(filename.c_str());
   std::string xmlstring( (std::istreambuf_iterator<char>(fin)),
                           std::istreambuf_iterator<char>()      );
   TEST_THROW( updateParametersFromXmlString(xmlstring,inOutArg(pl) ), DuplicateParameterSublist );
   TEST_THROW( getParametersFromXmlString(xmlstring), DuplicateParameterSublist );
   TEST_THROW( getParametersFromXmlString(xmlstring,null), DuplicateParameterSublist );
 }
Beispiel #2
0
TEUCHOS_UNIT_TEST(Teuchos_ParameterList, parameterEntryConverterExceptions)
{

    TEST_THROW(RCP<ParameterList>
               badRootElementList = getParametersFromXmlFile("BadRootElement.xml"),
               BadXMLParameterListRootElementException);

    TEST_THROW(RCP<ParameterList>
               badParameterListElementList = getParametersFromXmlFile("BadParameterListElement.xml"),
               BadParameterListElementException);

    TEST_THROW(RCP<ParameterList>
               noNameAttributeList = getParametersFromXmlFile("NoNameAttribute.xml"),
               NoNameAttributeExecption);

    TEST_THROW(RCP<ParameterList>
               noTypeAttributeList = getParametersFromXmlFile("NoTypeAttribute.xml"),
               NoTypeAttributeExecption);

    TEST_THROW(RCP<ParameterList>
               noValueAttributeList = getParametersFromXmlFile("NoValueAttribute.xml"),
               NoValueAttributeExecption);

    TEST_THROW(RCP<ParameterList>
               badIdsList = getParametersFromXmlFile("DuplicateParameterIDs.xml"),
               DuplicateParameterIDsException);

    TEST_THROW(RCP<ParameterList>
               badParameterEntryConverterList = getParametersFromXmlFile("CantFindParameterEntryConverter.xml"),
               CantFindParameterEntryConverterException);


#ifdef HAVE_TEUCHOS_DEBUG

    StandardTemplatedParameterConverter<int> intConverter;
    StandardTemplatedParameterConverter<float> floatConverter;
    ValidatortoIDMap dummmyValidatorMap;
    RCP<ParameterEntry> floatParameter = rcp(
            new ParameterEntry((float)3.0));
    TEST_THROW(intConverter.fromParameterEntrytoXML(floatParameter, "blah", 1, dummmyValidatorMap),
               BadParameterEntryXMLConverterTypeException);

    XMLObject floatXML = floatConverter.fromParameterEntrytoXML(floatParameter, "float", 1, dummmyValidatorMap);
    TEST_THROW(intConverter.fromXMLtoParameterEntry(floatXML),
               BadParameterEntryXMLConverterTypeException);

#endif

}