Use elog to throw exceptions
Use elog to throw exceptions and update unit tests
Change-Id: I338ded4403b3b559a84da311eda5ee15e712569a
Signed-off-by: Lei YU <mine260309@gmail.com>
diff --git a/test/TestUtils.cpp b/test/TestUtils.cpp
index fc345f2..16ccd9c 100644
--- a/test/TestUtils.cpp
+++ b/test/TestUtils.cpp
@@ -1,6 +1,7 @@
#include "utils.hpp"
#include <gtest/gtest.h>
+#include <xyz/openbmc_project/Common/error.hpp>
namespace phosphor
{
@@ -9,16 +10,18 @@
namespace utils
{
+using InvalidArgument =
+ sdbusplus::xyz::openbmc_project::Common::Error::InvalidArgument;
+
TEST(TestUtil, strToMode)
{
EXPECT_EQ(Mode::NTP, strToMode("NTP"));
EXPECT_EQ(Mode::MANUAL, strToMode("MANUAL"));
- // All unrecognized strings result in assertion
- // TODO: use EXPECT_THROW once the code uses elog
- EXPECT_DEATH(strToMode(""), "");
- EXPECT_DEATH(strToMode("Manual"), "");
- EXPECT_DEATH(strToMode("whatever"), "");
+ // All unrecognized strings result in InvalidArgument exception
+ EXPECT_THROW(strToMode(""), InvalidArgument);
+ EXPECT_THROW(strToMode("Manual"), InvalidArgument);
+ EXPECT_THROW(strToMode("whatever"), InvalidArgument);
}
@@ -29,11 +32,10 @@
EXPECT_EQ(Owner::SPLIT, strToOwner("SPLIT"));
EXPECT_EQ(Owner::BOTH, strToOwner("BOTH"));
- // All unrecognized strings result in assertion
- // TODO: use EXPECT_THROW once the code uses elog
- EXPECT_DEATH(strToOwner(""), "");
- EXPECT_DEATH(strToOwner("Split"), "");
- EXPECT_DEATH(strToOwner("xyz"), "");
+ // All unrecognized strings result in InvalidArgument exception
+ EXPECT_THROW(strToOwner(""), InvalidArgument);
+ EXPECT_THROW(strToOwner("Split"), InvalidArgument);
+ EXPECT_THROW(strToOwner("xyz"), InvalidArgument);
}
TEST(TestUtil, modeToStr)
@@ -41,9 +43,8 @@
EXPECT_EQ("NTP", modeToStr(Mode::NTP));
EXPECT_EQ("MANUAL", modeToStr(Mode::MANUAL));
- // All unrecognized enums result in assertion
- // TODO: use EXPECT_THROW once the code uses elog
- EXPECT_DEATH(modeToStr(static_cast<Mode>(100)), "");
+ // All unrecognized strings result in InvalidArgument exception
+ EXPECT_THROW(modeToStr(static_cast<Mode>(100)), InvalidArgument);
}
TEST(TestUtil, ownerToStr)
@@ -53,9 +54,8 @@
EXPECT_EQ("SPLIT", ownerToStr(Owner::SPLIT));
EXPECT_EQ("BOTH", ownerToStr(Owner::BOTH));
- // All unrecognized enums result in assertion
- // TODO: use EXPECT_THROW once the code uses elog
- EXPECT_DEATH(ownerToStr(static_cast<Owner>(100)), "");
+ // All unrecognized strings result in InvalidArgument exception
+ EXPECT_THROW(ownerToStr(static_cast<Owner>(100)), InvalidArgument);
}
} // namespace utils