Merge pull request #2767 from joakim-hove/rst-deck-output
Rst deck output
This commit is contained in:
commit
24d1f58aca
@ -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())
|
||||
{
|
||||
}
|
||||
|
||||
@ -70,7 +70,7 @@ namespace Opm {
|
||||
void add_deckvalue( DeckItem deck_item, DeckRecord& deck_record, const ParserItem& parser_item, const std::vector<DeckValue>& input_record, size_t j) {
|
||||
if (j >= input_record.size() || input_record[j].is_default()) {
|
||||
if (parser_item.hasDefault())
|
||||
deck_item.push_back( parser_item.getDefault<T>() );
|
||||
deck_item.push_backDefault( parser_item.getDefault<T>() );
|
||||
else
|
||||
deck_item.push_backDummyDefault<T>();
|
||||
}
|
||||
|
@ -382,7 +382,7 @@ void FileDeck::rst_solution(const std::string& rst_base, int report_step) {
|
||||
{
|
||||
Opm::UnitSystem units;
|
||||
std::vector<DeckValue> values{ DeckValue{rst_base}, DeckValue{report_step} };
|
||||
DeckKeyword restart(ParserKeywords::RESTART(), std::vector<std::vector<DeckValue>>{ values }, units, units);
|
||||
DeckKeyword restart(ParserKeywords::RESTART{}, std::vector<std::vector<DeckValue>>{ values }, units, units);
|
||||
|
||||
auto solution = this->find("SOLUTION").value();
|
||||
this->insert(++solution, restart);
|
||||
|
@ -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