Fix regression test issues

* Fix eternal loop causing the application to hang
* Revert changes related to file well path introduced in 70bb22
* Use some iterations to find representative cells for computation of cell sizes
This commit is contained in:
Magne Sjaastad
2023-02-16 20:05:12 +01:00
committed by GitHub
parent edbeb4dfb1
commit ac9b9b2699
4 changed files with 107 additions and 74 deletions

View File

@@ -49,6 +49,7 @@
#include "RimEclipseCase.h"
#include "RimEclipseCaseCollection.h"
#include "RimEnsembleWellLogsCollection.h"
#include "RimFileWellPath.h"
#include "RimFlowPlotCollection.h"
#include "RimFormationNamesCollection.h"
#include "RimFractureTemplate.h"
@@ -486,6 +487,17 @@ void RimProject::setProjectFileNameAndUpdateDependencies( const QString& project
}
wellPathImport->updateFilePaths();
auto* wellPathColl = RimTools::wellPathCollection();
if ( wellPathColl )
{
for ( auto wellPath : wellPathColl->allWellPaths() )
{
if ( auto fileWellPath = dynamic_cast<RimFileWellPath*>( wellPath ) )
{
fileWellPath->updateFilePathsFromProjectPath( oldProjectPath, newProjectPath );
}
}
}
}
//--------------------------------------------------------------------------------------------------
@@ -1526,8 +1538,9 @@ void RimProject::transferPathsToGlobalPathList()
{
if ( summaryCase->displayNameType() == RimCaseDisplayNameTools::DisplayName::CUSTOM )
{
// At this point, after the replace of variables into caf::FilePath objects, the variable name is stored in
// the summary case object. Read out the variable name and append "_name" for custom summary variables.
// At this point, after the replace of variables into caf::FilePath objects, the variable name is
// stored in the summary case object. Read out the variable name and append "_name" for custom
// summary variables.
QString variableName = summaryCase->summaryHeaderFilename();
variableName = variableName.remove( RiaVariableMapper::variableToken() );
@@ -1546,8 +1559,9 @@ void RimProject::transferPathsToGlobalPathList()
{
if ( gridCase->displayNameType() == RimCaseDisplayNameTools::DisplayName::CUSTOM )
{
// At this point, after the replace of variables into caf::FilePath objects, the variable name is stored in
// the summary case object. Read out the variable name and append "_name" for custom summary variables.
// At this point, after the replace of variables into caf::FilePath objects, the variable name is
// stored in the summary case object. Read out the variable name and append "_name" for custom
// summary variables.
QString variableName = gridCase->gridFileName();
variableName = variableName.remove( RiaVariableMapper::variableToken() );
@@ -1606,8 +1620,8 @@ void RimProject::distributePathsFromGlobalPathList()
}
else if ( variableName.contains( RiaVariableMapper::postfixName() + RiaVariableMapper::variableToken() ) )
{
// The variable name is not found in the variable list, but the name indicates a variable. Reset to full
// case name.
// The variable name is not found in the variable list, but the name indicates a variable. Reset
// to full case name.
summaryCase->setDisplayNameOption( RimCaseDisplayNameTools::DisplayName::FULL_CASE_NAME );
}
}
@@ -1627,8 +1641,8 @@ void RimProject::distributePathsFromGlobalPathList()
}
else if ( variableName.contains( RiaVariableMapper::postfixName() + RiaVariableMapper::variableToken() ) )
{
// The variable name is not found in the variable list, but the name indicates a variable. Reset to full
// case name.
// The variable name is not found in the variable list, but the name indicates a variable. Reset
// to full case name.
gridCase->setDisplayNameType( RimCaseDisplayNameTools::DisplayName::FULL_CASE_NAME );
}
}

View File

@@ -279,6 +279,19 @@ bool RimFileWellPath::isStoredInCache() const
return !id().isEmpty();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFileWellPath::updateFilePathsFromProjectPath( const QString& newProjectPath, const QString& oldProjectPath )
{
QString newCacheFileName = getCacheFileName();
if ( caf::Utils::fileExists( newCacheFileName ) )
{
m_filePathInCache = newCacheFileName;
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -336,16 +349,3 @@ void RimFileWellPath::fieldChangedByUi( const caf::PdmFieldHandle* changedField,
}
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFileWellPath::initAfterRead()
{
QString newCacheFileName = getCacheFileName();
if ( caf::Utils::fileExists( newCacheFileName ) )
{
m_filePathInCache = newCacheFileName;
}
}

View File

@@ -30,6 +30,7 @@ public:
void setFilepath( const QString& path );
bool readWellPathFile( QString* errorMessage, RifWellPathImporter* wellPathImporter, bool setWellNameForExport );
int wellPathIndexInFile() const; // -1 means none.
void updateFilePathsFromProjectPath( const QString& newProjectPath, const QString& oldProjectPath );
void setWellPathIndexInFile( int index );
static QString getCacheDirectoryPath();
@@ -42,7 +43,6 @@ private:
bool isStoredInCache() const;
QString getCacheFileName();
void initAfterRead() override;
void setupBeforeSave() override;
void ensureWellPathStartAtSeaLevel( RigWellPath* wellPath );