blob: fc345f2560bf5aaa3407dacf196281d420f306cb [file] [log] [blame]
Lei YUddd54422017-04-18 16:38:44 +08001#include "utils.hpp"
2
3#include <gtest/gtest.h>
4
5namespace phosphor
6{
7namespace time
8{
9namespace utils
10{
11
12TEST(TestUtil, strToMode)
13{
14 EXPECT_EQ(Mode::NTP, strToMode("NTP"));
15 EXPECT_EQ(Mode::MANUAL, strToMode("MANUAL"));
16
17 // All unrecognized strings result in assertion
18 // TODO: use EXPECT_THROW once the code uses elog
19 EXPECT_DEATH(strToMode(""), "");
20 EXPECT_DEATH(strToMode("Manual"), "");
21 EXPECT_DEATH(strToMode("whatever"), "");
22}
23
24
25TEST(TestUtil, strToOwner)
26{
27 EXPECT_EQ(Owner::BMC, strToOwner("BMC"));
28 EXPECT_EQ(Owner::HOST, strToOwner("HOST"));
29 EXPECT_EQ(Owner::SPLIT, strToOwner("SPLIT"));
30 EXPECT_EQ(Owner::BOTH, strToOwner("BOTH"));
31
32 // All unrecognized strings result in assertion
33 // TODO: use EXPECT_THROW once the code uses elog
34 EXPECT_DEATH(strToOwner(""), "");
35 EXPECT_DEATH(strToOwner("Split"), "");
36 EXPECT_DEATH(strToOwner("xyz"), "");
37}
38
39TEST(TestUtil, modeToStr)
40{
41 EXPECT_EQ("NTP", modeToStr(Mode::NTP));
42 EXPECT_EQ("MANUAL", modeToStr(Mode::MANUAL));
43
44 // All unrecognized enums result in assertion
45 // TODO: use EXPECT_THROW once the code uses elog
46 EXPECT_DEATH(modeToStr(static_cast<Mode>(100)), "");
47}
48
49TEST(TestUtil, ownerToStr)
50{
51 EXPECT_EQ("BMC", ownerToStr(Owner::BMC));
52 EXPECT_EQ("HOST", ownerToStr(Owner::HOST));
53 EXPECT_EQ("SPLIT", ownerToStr(Owner::SPLIT));
54 EXPECT_EQ("BOTH", ownerToStr(Owner::BOTH));
55
56 // All unrecognized enums result in assertion
57 // TODO: use EXPECT_THROW once the code uses elog
58 EXPECT_DEATH(ownerToStr(static_cast<Owner>(100)), "");
59}
60
61} // namespace utils
62} // namespace time
63} // namespace phosphor