mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#2434 Eclipse input property: fix import for keywords without data
Keywords without data does not have a trailing '/'.
This commit is contained in:
parent
a47edd4fa6
commit
53af120f39
@ -88,6 +88,11 @@ std::pair<std::string, std::vector<float>>
|
||||
{
|
||||
std::vector<float> values;
|
||||
|
||||
auto isKeywordWithoutData = []( const std::string& keyword ) {
|
||||
std::vector<std::string> keywords = { "ECHO", "NOECHO" };
|
||||
return std::find( keywords.begin(), keywords.end(), keyword ) != keywords.end();
|
||||
};
|
||||
|
||||
const auto commentChar = '-';
|
||||
const auto commentString = "--";
|
||||
|
||||
@ -133,7 +138,9 @@ std::pair<std::string, std::vector<float>>
|
||||
{
|
||||
keywordName = line;
|
||||
if ( keywordName == "FAULTS" ) isFaultKeyword = true;
|
||||
if ( isKeywordWithoutData( keywordName ) ) isEndTokenKeywordRead = true;
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -204,3 +204,33 @@ TEST( RifEclipseTextFileReader, ValueMultiplier )
|
||||
EXPECT_FLOAT_EQ( 0.5f, firstKeyword.values[2] );
|
||||
EXPECT_FLOAT_EQ( 12345.12f, firstKeyword.values[3] );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
TEST( RifEclipseTextFileReader, KeywordsWithoutValue )
|
||||
{
|
||||
std::string fileContent = "NOECHO\n"
|
||||
"SWAT\n"
|
||||
"1.0 2.0 3.0\n"
|
||||
"/\n"
|
||||
"SOIL\n"
|
||||
"6.0 7.0 8.0 9.0\n"
|
||||
"/\n";
|
||||
|
||||
auto keywordDataItems = RifEclipseTextFileReader::parseStringData( fileContent );
|
||||
|
||||
EXPECT_EQ( 3u, keywordDataItems.size() );
|
||||
|
||||
auto noEchoKeyword = keywordDataItems[0];
|
||||
EXPECT_EQ( 0u, noEchoKeyword.values.size() );
|
||||
|
||||
auto swatKeyword = keywordDataItems[1];
|
||||
EXPECT_EQ( 3u, swatKeyword.values.size() );
|
||||
|
||||
auto soilKeyword = keywordDataItems[2];
|
||||
EXPECT_EQ( 4u, soilKeyword.values.size() );
|
||||
|
||||
EXPECT_FLOAT_EQ( 1.0f, swatKeyword.values[0] );
|
||||
EXPECT_FLOAT_EQ( 6.0f, soilKeyword.values[0] );
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user