mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#9620 Add reader for pressure depth text file.
This commit is contained in:
@@ -85,6 +85,7 @@ set(SOURCE_GROUP_SOURCE_FILES
|
||||
${CMAKE_CURRENT_LIST_DIR}/RifEclipseTextFileReader-Test.cpp
|
||||
${CMAKE_CURRENT_LIST_DIR}/RiaSummaryStringTools-Test.cpp
|
||||
${CMAKE_CURRENT_LIST_DIR}/RiaVariableMapper-Test.cpp
|
||||
${CMAKE_CURRENT_LIST_DIR}/RifPressureDepthTextFileReader-Test.cpp
|
||||
)
|
||||
|
||||
if(RESINSIGHT_ENABLE_GRPC)
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
#include "gtest/gtest.h"
|
||||
|
||||
#include "RiaTestDataDirectory.h"
|
||||
|
||||
#include "RifPressureDepthTextFileReader.h"
|
||||
#include "RigPressureDepthData.h"
|
||||
|
||||
#include <QFile>
|
||||
#include <QTextStream>
|
||||
|
||||
static const QString CASE_REAL_TEST_DATA_DIRECTORY_04 =
|
||||
QString( "%1/RifPressureDepthTextFileReader/" ).arg( TEST_DATA_DIR );
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
TEST( RifPressureDepthTextFileReaderTest, LoadFile )
|
||||
{
|
||||
QString fileName = CASE_REAL_TEST_DATA_DIRECTORY_04 + "example_file.txt";
|
||||
|
||||
auto [items, errorMessage] = RifPressureDepthTextFileReader::readFile( fileName );
|
||||
|
||||
EXPECT_TRUE( errorMessage.isEmpty() );
|
||||
ASSERT_EQ( 3u, items.size() );
|
||||
|
||||
EXPECT_EQ( "'G-14'", items[0].wellName().toStdString() );
|
||||
std::vector<std::pair<double, double>> values0 = items[0].getPressureDepthValues();
|
||||
EXPECT_EQ( 4u, values0.size() );
|
||||
double delta = 0.001;
|
||||
EXPECT_NEAR( 418.88, values0[0].first, delta );
|
||||
EXPECT_NEAR( 2726.91, values0[0].second, delta );
|
||||
|
||||
EXPECT_EQ( "'G-14'", items[1].wellName().toStdString() );
|
||||
EXPECT_EQ( 28, items[1].timeStep().date().day() );
|
||||
EXPECT_EQ( 12, items[1].timeStep().date().month() );
|
||||
EXPECT_EQ( 1996, items[1].timeStep().date().year() );
|
||||
std::vector<std::pair<double, double>> values1 = items[1].getPressureDepthValues();
|
||||
EXPECT_NEAR( 418.88, values1[0].first, delta );
|
||||
EXPECT_NEAR( 2726.91, values1[0].second, delta );
|
||||
|
||||
EXPECT_EQ( "'F-56'", items[2].wellName().toStdString() );
|
||||
EXPECT_EQ( 15, items[2].timeStep().date().day() );
|
||||
EXPECT_EQ( 1, items[2].timeStep().date().month() );
|
||||
EXPECT_EQ( 2012, items[2].timeStep().date().year() );
|
||||
std::vector<std::pair<double, double>> values2 = items[2].getPressureDepthValues();
|
||||
EXPECT_EQ( 7u, values2.size() );
|
||||
EXPECT_NEAR( 413.32, values2[6].first, delta );
|
||||
EXPECT_NEAR( 2896.555, values2[6].second, delta );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
TEST( RifPressureDepthTextFileReaderTest, LoadFileNonExistingFiles )
|
||||
{
|
||||
QString fileName = CASE_REAL_TEST_DATA_DIRECTORY_04 + "this_file_does_not_exist.csv";
|
||||
|
||||
auto [items, errorMessage] = RifPressureDepthTextFileReader::readFile( fileName );
|
||||
|
||||
EXPECT_FALSE( errorMessage.isEmpty() );
|
||||
EXPECT_EQ( 0u, items.size() );
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
--TVDMSL
|
||||
RFT
|
||||
--
|
||||
WELLNAME 'G-14'
|
||||
DATE 28-DEC-1995
|
||||
PRESSURE DEPTH
|
||||
BARSA METRES
|
||||
418.88 2726.91
|
||||
419.02 2729.36
|
||||
419.11 2733.29
|
||||
419.17 2735.26
|
||||
--
|
||||
WELLNAME 'G-14'
|
||||
DATE 28-DEC-1996
|
||||
PRESSURE DEPTH
|
||||
BARSA METRES
|
||||
418.88 2726.91
|
||||
419.02 2729.36
|
||||
419.11 2733.29
|
||||
419.17 2735.26
|
||||
--
|
||||
WELLNAME 'F-56'
|
||||
DATE 15-jan-12
|
||||
PRESSURE DEPTH
|
||||
BARSA METRES
|
||||
414.40 2911.029
|
||||
415.92 2929.496
|
||||
417.23 2935.801
|
||||
415.76 2934.981
|
||||
414.75 2919.446
|
||||
413.53 2903.147
|
||||
413.32 2896.555
|
||||
Reference in New Issue
Block a user