Added new enum ParserKeywordActionEnum
This commit is contained in:
parent
8884f865b3
commit
9b96d6dfa5
@ -103,4 +103,36 @@ namespace Opm {
|
||||
else
|
||||
throw std::invalid_argument("String: " + stringValue + " can not be converted to enum value");
|
||||
}
|
||||
|
||||
/*****************************************************************/
|
||||
|
||||
const std::string ParserKeywordActionEnum2String(ParserKeywordActionEnum enumValue) {
|
||||
switch (enumValue) {
|
||||
case INTERNALIZE:
|
||||
return "INTERNALIZE";
|
||||
break;
|
||||
case IGNORE:
|
||||
return "IGNORE";
|
||||
break;
|
||||
case IGNORE_WARNING:
|
||||
return "IGNORE_WARNING";
|
||||
break;
|
||||
default:
|
||||
throw std::invalid_argument("Implementation error - should NOT be here");
|
||||
}
|
||||
}
|
||||
|
||||
ParserKeywordActionEnum ParserKeywordActionEnumFromString(const std::string& stringValue) {
|
||||
if (stringValue == "INTERNALIZE")
|
||||
return INTERNALIZE;
|
||||
else if (stringValue == "IGNORE")
|
||||
return IGNORE;
|
||||
else if (stringValue == "IGNORE_WARNING")
|
||||
return IGNORE_WARNING;
|
||||
else
|
||||
throw std::invalid_argument("String: " + stringValue + " can not be converted to enum value");
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
@ -47,6 +47,13 @@ namespace Opm {
|
||||
};
|
||||
|
||||
|
||||
enum ParserKeywordActionEnum {
|
||||
INTERNALIZE = 0,
|
||||
IGNORE = 1,
|
||||
IGNORE_WARNING = 2
|
||||
};
|
||||
|
||||
const std::string ParserKeywordActionEnum2String(ParserKeywordActionEnum enumValue);
|
||||
const std::string ParserItemSizeEnum2String(ParserItemSizeEnum enumValue);
|
||||
const std::string ParserKeywordSizeEnum2String(ParserKeywordSizeEnum enumValue);
|
||||
const std::string ParserValueTypeEnum2String(ParserValueTypeEnum enumValue);
|
||||
@ -54,6 +61,7 @@ namespace Opm {
|
||||
ParserItemSizeEnum ParserItemSizeEnumFromString(const std::string& stringValue);
|
||||
ParserKeywordSizeEnum ParserKeywordSizeEnumFromString(const std::string& stringValue);
|
||||
ParserValueTypeEnum ParserValueTypeEnumFromString(const std::string& stringValue);
|
||||
ParserKeywordActionEnum ParserKeywordActionEnumFromString(const std::string& stringValue);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -100,3 +100,34 @@ BOOST_AUTO_TEST_CASE(TestValueTypeEnumLoop) {
|
||||
BOOST_CHECK_EQUAL( "FLOAT" , ParserValueTypeEnum2String(ParserValueTypeEnumFromString( "FLOAT" ) ));
|
||||
BOOST_CHECK_EQUAL( "STRING" , ParserValueTypeEnum2String(ParserValueTypeEnumFromString( "STRING" ) ));
|
||||
}
|
||||
|
||||
|
||||
/*****************************************************************/
|
||||
|
||||
BOOST_AUTO_TEST_CASE(TestKeywordActionEnum2String) {
|
||||
BOOST_CHECK_EQUAL( "INTERNALIZE" , ParserKeywordActionEnum2String(INTERNALIZE));
|
||||
BOOST_CHECK_EQUAL( "IGNORE" , ParserKeywordActionEnum2String(IGNORE));
|
||||
BOOST_CHECK_EQUAL( "IGNORE_WARNING" , ParserKeywordActionEnum2String(IGNORE_WARNING));
|
||||
}
|
||||
|
||||
|
||||
BOOST_AUTO_TEST_CASE(TestKeywordActionEnumFromString) {
|
||||
BOOST_CHECK_THROW( ParserKeywordActionEnumFromString("XXX") , std::invalid_argument );
|
||||
BOOST_CHECK_EQUAL( INTERNALIZE , ParserKeywordActionEnumFromString("INTERNALIZE"));
|
||||
BOOST_CHECK_EQUAL( IGNORE_WARNING , ParserKeywordActionEnumFromString("IGNORE_WARNING"));
|
||||
BOOST_CHECK_EQUAL( IGNORE , ParserKeywordActionEnumFromString("IGNORE"));
|
||||
}
|
||||
|
||||
|
||||
|
||||
BOOST_AUTO_TEST_CASE(TestKeywordActionEnumLoop) {
|
||||
BOOST_CHECK_EQUAL( INTERNALIZE , ParserKeywordActionEnumFromString( ParserKeywordActionEnum2String( INTERNALIZE ) ));
|
||||
BOOST_CHECK_EQUAL( IGNORE , ParserKeywordActionEnumFromString( ParserKeywordActionEnum2String( IGNORE ) ));
|
||||
BOOST_CHECK_EQUAL( IGNORE_WARNING , ParserKeywordActionEnumFromString( ParserKeywordActionEnum2String( IGNORE_WARNING ) ));
|
||||
|
||||
BOOST_CHECK_EQUAL( "INTERNALIZE" , ParserKeywordActionEnum2String(ParserKeywordActionEnumFromString( "INTERNALIZE" ) ));
|
||||
BOOST_CHECK_EQUAL( "IGNORE" , ParserKeywordActionEnum2String(ParserKeywordActionEnumFromString( "IGNORE" ) ));
|
||||
BOOST_CHECK_EQUAL( "IGNORE_WARNING" , ParserKeywordActionEnum2String(ParserKeywordActionEnumFromString( "IGNORE_WARNING" ) ));
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user