2015-10-05 16:09:51 +02:00
|
|
|
#include "gtest/gtest.h"
|
|
|
|
|
|
2015-10-12 15:04:21 +02:00
|
|
|
#include "../RimWellLogCurveImpl.h"
|
2015-10-05 16:09:51 +02:00
|
|
|
|
2015-10-05 18:41:22 +02:00
|
|
|
#include <cmath> // Needed for HUGE_VAL on Linux
|
2015-10-05 16:09:51 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
//--------------------------------------------------------------------------------------------------
|
|
|
|
|
///
|
|
|
|
|
//--------------------------------------------------------------------------------------------------
|
2015-10-05 18:37:58 +02:00
|
|
|
TEST(RimWellLogExtractionCurveImplTest, StripOffInvalidValAtEndsOfVector)
|
2015-10-05 16:09:51 +02:00
|
|
|
{
|
|
|
|
|
std::vector<double> values;
|
2015-10-05 18:37:58 +02:00
|
|
|
values.push_back(HUGE_VAL);
|
|
|
|
|
values.push_back(HUGE_VAL);
|
2015-10-05 16:09:51 +02:00
|
|
|
values.push_back(1.0);
|
2015-10-05 18:37:58 +02:00
|
|
|
values.push_back(2.0);
|
|
|
|
|
values.push_back(3.0);
|
|
|
|
|
values.push_back(HUGE_VAL);
|
2015-10-05 16:09:51 +02:00
|
|
|
|
|
|
|
|
std::vector< std::pair<size_t, size_t> > valuesIntervals;
|
2015-10-12 15:04:21 +02:00
|
|
|
RimWellLogCurveImpl::calculateIntervalsOfValidValues(values, valuesIntervals);
|
2015-10-05 16:09:51 +02:00
|
|
|
|
2015-10-14 07:13:45 -07:00
|
|
|
EXPECT_EQ(1, static_cast<int>(valuesIntervals.size()));
|
|
|
|
|
EXPECT_EQ(2, static_cast<int>(valuesIntervals[0].first));
|
|
|
|
|
EXPECT_EQ(4, static_cast<int>(valuesIntervals[0].second));
|
2015-10-05 18:37:58 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//--------------------------------------------------------------------------------------------------
|
|
|
|
|
///
|
|
|
|
|
//--------------------------------------------------------------------------------------------------
|
|
|
|
|
TEST(RimWellLogExtractionCurveImplTest, StripOffHugeValAtEndsAndInteriorOfVector)
|
|
|
|
|
{
|
|
|
|
|
std::vector<double> values;
|
|
|
|
|
values.push_back(HUGE_VAL);
|
|
|
|
|
values.push_back(HUGE_VAL);
|
|
|
|
|
values.push_back(1.0);
|
|
|
|
|
values.push_back(HUGE_VAL);
|
|
|
|
|
values.push_back(HUGE_VAL);
|
|
|
|
|
values.push_back(2.0);
|
|
|
|
|
values.push_back(3.0);
|
|
|
|
|
values.push_back(HUGE_VAL);
|
|
|
|
|
|
|
|
|
|
std::vector< std::pair<size_t, size_t> > valuesIntervals;
|
2015-10-12 15:04:21 +02:00
|
|
|
RimWellLogCurveImpl::calculateIntervalsOfValidValues(values, valuesIntervals);
|
2015-10-05 18:37:58 +02:00
|
|
|
|
|
|
|
|
EXPECT_EQ(2, valuesIntervals.size());
|
|
|
|
|
EXPECT_EQ(2, valuesIntervals[0].first);
|
|
|
|
|
EXPECT_EQ(2, valuesIntervals[0].second);
|
|
|
|
|
EXPECT_EQ(5, valuesIntervals[1].first);
|
|
|
|
|
EXPECT_EQ(6, valuesIntervals[1].second);
|
2015-10-05 16:09:51 +02:00
|
|
|
}
|