Skip to content

Commit

Permalink
Test GncOptionRangeValue as a GncOption.
Browse files Browse the repository at this point in the history
Better representation of how it will be used.
  • Loading branch information
jralls committed Jul 11, 2021
1 parent 4cabd6c commit 4dcf4a0
Showing 1 changed file with 16 additions and 14 deletions.
30 changes: 16 additions & 14 deletions libgnucash/app-utils/test/gtest-gnc-option.cpp
Expand Up @@ -351,34 +351,36 @@ class GncOptionRangeTest : public ::testing::Test
{
protected:
GncOptionRangeTest() :
m_intoption{"foo", "bar", "baz", "Phony Option", 15, 1, 30, 1},
m_doubleoption{"waldo", "pepper", "salt", "Phonier Option",
1.5, 1.0, 3.0, 0.1} {}

GncOptionRangeValue<int> m_intoption;
GncOptionRangeValue<double> m_doubleoption;
m_intoption{GncOptionRangeValue<int>{"foo", "bar", "baz",
"Phony Option", 15, 1, 30, 1}},
m_doubleoption{GncOptionRangeValue<double>{"waldo", "pepper", "salt",
"Phonier Option", 1.5, 1.0,
3.0, 0.1}} {}

GncOption m_intoption;
GncOption m_doubleoption;
};

using GncRangeOption = GncOptionRangeTest;

TEST_F(GncRangeOption, test_initialization)
{
EXPECT_EQ(15, m_intoption.get_value());
EXPECT_EQ(1.5, m_doubleoption.get_value());
EXPECT_EQ(15, m_intoption.get_default_value());
EXPECT_EQ(1.5, m_doubleoption.get_default_value());
EXPECT_EQ(15, m_intoption.get_value<int>());
EXPECT_EQ(1.5, m_doubleoption.get_value<double>());
EXPECT_EQ(15, m_intoption.get_default_value<int>());
EXPECT_EQ(1.5, m_doubleoption.get_default_value<double>());
}

TEST_F(GncRangeOption, test_setter)
{
EXPECT_THROW({ m_intoption.set_value(45); }, std::invalid_argument);
EXPECT_NO_THROW({ m_intoption.set_value(20); });
EXPECT_EQ(20, m_intoption.get_value());
EXPECT_EQ(15, m_intoption.get_default_value());
EXPECT_EQ(20, m_intoption.get_value<int>());
EXPECT_EQ(15, m_intoption.get_default_value<int>());
EXPECT_THROW({ m_doubleoption.set_value(4.5); }, std::invalid_argument);
EXPECT_NO_THROW({ m_doubleoption.set_value(2.0); });
EXPECT_EQ(2.0, m_doubleoption.get_value());
EXPECT_EQ(1.5, m_doubleoption.get_default_value());
EXPECT_EQ(2.0, m_doubleoption.get_value<double>());
EXPECT_EQ(1.5, m_doubleoption.get_default_value<double>());
}

TEST_F(GncRangeOption, test_range_out)
Expand Down

0 comments on commit 4dcf4a0

Please sign in to comment.