mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Improve interface for string operations
Trim incoming string before converting to number Remove use of std::strtod and std::stoi Use std::string_view instead of std::string when possible
This commit is contained in:
@@ -257,3 +257,75 @@ TEST( RiaStdStringToolsTest, TestInvalidRangeStrings )
|
||||
ASSERT_EQ( expectedValues, actualValues );
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
TEST( RiaStdStringToolsTest, TestToDouble )
|
||||
{
|
||||
{
|
||||
std::string text = " 0.123";
|
||||
|
||||
double resultValue = 0.0;
|
||||
auto isOk = RiaStdStringTools::toDouble( text, resultValue );
|
||||
EXPECT_TRUE( isOk );
|
||||
|
||||
EXPECT_DOUBLE_EQ( resultValue, 0.123 );
|
||||
}
|
||||
|
||||
{
|
||||
std::string text = " 0.123 2";
|
||||
|
||||
double resultValue = 0.0;
|
||||
auto isOk = RiaStdStringTools::toDouble( text, resultValue );
|
||||
EXPECT_TRUE( isOk );
|
||||
|
||||
EXPECT_DOUBLE_EQ( resultValue, 0.123 );
|
||||
}
|
||||
|
||||
{
|
||||
std::string text = "0.123 2";
|
||||
|
||||
double resultValue = 0.0;
|
||||
auto isOk = RiaStdStringTools::toDouble( text, resultValue );
|
||||
EXPECT_TRUE( isOk );
|
||||
|
||||
EXPECT_DOUBLE_EQ( resultValue, 0.123 );
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
TEST( RiaStdStringToolsTest, TestToInt )
|
||||
{
|
||||
{
|
||||
std::string text = " 12";
|
||||
|
||||
int resultValue = -1;
|
||||
auto isOk = RiaStdStringTools::toInt( text, resultValue );
|
||||
EXPECT_TRUE( isOk );
|
||||
|
||||
EXPECT_EQ( resultValue, 12 );
|
||||
}
|
||||
|
||||
{
|
||||
std::string text = " 12 ";
|
||||
|
||||
int resultValue = -1;
|
||||
auto isOk = RiaStdStringTools::toInt( text, resultValue );
|
||||
EXPECT_TRUE( isOk );
|
||||
|
||||
EXPECT_EQ( resultValue, 12 );
|
||||
}
|
||||
|
||||
{
|
||||
std::string text = "12";
|
||||
|
||||
int resultValue = -1;
|
||||
auto isOk = RiaStdStringTools::toInt( text, resultValue );
|
||||
EXPECT_TRUE( isOk );
|
||||
|
||||
EXPECT_EQ( resultValue, 12 );
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user