Files
ResInsight/ApplicationCode/ProjectDataModel/ProjectDataModel_UnitTests/RimWellLogExtractionCurveImpl-Test.cpp
Jacob Storen 10046eed4a Linux fixes
2015-10-14 07:13:45 -07:00

54 lines
1.8 KiB
C++

#include "gtest/gtest.h"
#include "../RimWellLogCurveImpl.h"
#include <cmath> // Needed for HUGE_VAL on Linux
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
TEST(RimWellLogExtractionCurveImplTest, StripOffInvalidValAtEndsOfVector)
{
std::vector<double> values;
values.push_back(HUGE_VAL);
values.push_back(HUGE_VAL);
values.push_back(1.0);
values.push_back(2.0);
values.push_back(3.0);
values.push_back(HUGE_VAL);
std::vector< std::pair<size_t, size_t> > valuesIntervals;
RimWellLogCurveImpl::calculateIntervalsOfValidValues(values, valuesIntervals);
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));
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
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;
RimWellLogCurveImpl::calculateIntervalsOfValidValues(values, valuesIntervals);
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);
}