mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#6481 Summary Plot: Detect cumulative fluid components
This commit is contained in:
@@ -871,9 +871,15 @@ bool RifEclipseSummaryAddress::isValidEclipseCategory() const
|
||||
QString RifEclipseSummaryAddress::baseQuantityName( const QString& quantityName )
|
||||
{
|
||||
QString qBaseName = quantityName;
|
||||
|
||||
if ( qBaseName.size() == 8 ) qBaseName.chop( 3 );
|
||||
while ( qBaseName.endsWith( "_" ) )
|
||||
qBaseName.chop( 1 );
|
||||
|
||||
auto indexToUnderScore = qBaseName.indexOf( "_" );
|
||||
if ( indexToUnderScore > 0 )
|
||||
{
|
||||
qBaseName = qBaseName.left( indexToUnderScore );
|
||||
}
|
||||
|
||||
return qBaseName;
|
||||
}
|
||||
|
||||
|
||||
@@ -203,9 +203,10 @@ public:
|
||||
|
||||
bool hasAccumulatedData() const;
|
||||
|
||||
static QString baseQuantityName( const QString& quantityName );
|
||||
|
||||
private:
|
||||
bool isValidEclipseCategory() const;
|
||||
static QString baseQuantityName( const QString& quantityName );
|
||||
static std::tuple<int32_t, int32_t, int32_t> ijkTupleFromUiText( const std::string& s );
|
||||
std::string formatUiTextRegionToRegion() const;
|
||||
std::pair<int16_t, int16_t> regionToRegionPairFromUiText( const std::string& s );
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "RifEclipseSummaryAddress.h"
|
||||
|
||||
#include <QString>
|
||||
#include <string>
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -293,3 +294,32 @@ TEST( RifEclipseSummaryAddressTest, TestEclipseAddressRegToRegParsing )
|
||||
EXPECT_EQ( 456, addr.regionNumber2() );
|
||||
EXPECT_TRUE( !addr.isErrorResult() );
|
||||
}
|
||||
|
||||
TEST( RifEclipseSummaryAddressTest, TestQuantityNameManipulations )
|
||||
{
|
||||
{
|
||||
auto s = RifEclipseSummaryAddress::baseQuantityName( "FOPT" );
|
||||
EXPECT_EQ( "FOPT", s.toStdString() );
|
||||
}
|
||||
|
||||
{
|
||||
auto s = RifEclipseSummaryAddress::baseQuantityName( "FOPT_1" );
|
||||
EXPECT_EQ( "FOPT", s.toStdString() );
|
||||
}
|
||||
|
||||
{
|
||||
auto s = RifEclipseSummaryAddress::baseQuantityName( "FOPR" );
|
||||
EXPECT_EQ( "FOPR", s.toStdString() );
|
||||
}
|
||||
|
||||
{
|
||||
auto s = RifEclipseSummaryAddress::baseQuantityName( "FOPR_1" );
|
||||
EXPECT_EQ( "FOPR", s.toStdString() );
|
||||
}
|
||||
|
||||
{
|
||||
// https://github.com/OPM/ResInsight/issues/6481
|
||||
auto s = RifEclipseSummaryAddress::baseQuantityName( "FCMIT_1" );
|
||||
EXPECT_EQ( "FCMIT", s.toStdString() );
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user