DeckKeyword - slash termination correctly initialized
This commit is contained in:
parent
a22458a592
commit
22edbe79ab
@ -34,7 +34,7 @@ namespace Opm {
|
||||
DeckKeyword::DeckKeyword(const ParserKeyword& parserKeyword) :
|
||||
m_keywordName(parserKeyword.getName()),
|
||||
m_isDataKeyword(false),
|
||||
m_slashTerminated(true)
|
||||
m_slashTerminated(!parserKeyword.hasFixedSize())
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -766,7 +766,7 @@ void set_dimensions( ParserItem& item,
|
||||
|
||||
bool ParserKeyword::hasFixedSize() const {
|
||||
auto size_type = this->keyword_size.size_type();
|
||||
return (size_type == FIXED || size_type == FIXED_CODE);
|
||||
return (size_type == FIXED || size_type == FIXED_CODE || this->m_records.empty());
|
||||
}
|
||||
|
||||
enum ParserKeywordSizeEnum ParserKeyword::getSizeType() const {
|
||||
|
@ -1590,20 +1590,12 @@ BOOST_AUTO_TEST_CASE(getFixedSize_sizeObjectHasFixedSize_sizeReturned) {
|
||||
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(getFixedSize_sizeObjectDoesNotHaveFixedSizeObjectSet_ExceptionThrown) {
|
||||
const auto& parserKeyword = createDynamicSized("JA");
|
||||
BOOST_CHECK_THROW(parserKeyword.getFixedSize(), std::logic_error);
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(hasFixedSize_hasFixedSizeObject_returnstrue) {
|
||||
const auto& parserKeyword = createFixedSized("JA", (size_t) 2);
|
||||
BOOST_CHECK(parserKeyword.hasFixedSize());
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(hasFixedSize_sizeObjectDoesNotHaveFixedSize_returnsfalse) {
|
||||
const auto& parserKeyword = createDynamicSized("JA");
|
||||
BOOST_CHECK(!parserKeyword.hasFixedSize());
|
||||
}
|
||||
|
||||
/******/
|
||||
/* Tables: */
|
||||
@ -1615,7 +1607,6 @@ BOOST_AUTO_TEST_CASE(DefaultIsNot_TableKeyword) {
|
||||
BOOST_AUTO_TEST_CASE(ConstructorIsTableCollection) {
|
||||
auto parserKeyword = createTable("JA" , "TABDIMS" , "NTPVT" , true);
|
||||
BOOST_CHECK(parserKeyword.isTableCollection());
|
||||
BOOST_CHECK(!parserKeyword.hasFixedSize());
|
||||
|
||||
auto keyword_size = parserKeyword.getKeywordSize();
|
||||
BOOST_CHECK_EQUAL( parserKeyword.getSizeType() , OTHER_KEYWORD_IN_DECK);
|
||||
|
Loading…
Reference in New Issue
Block a user