xref: /openbmc/gpioplus/test/utility/aspeed.cpp (revision 7ba248ad)
18ff58122SWilliam A. Kennington III #include <gpioplus/utility/aspeed.hpp>
2*7ba248adSPatrick Williams 
38ff58122SWilliam A. Kennington III #include <gtest/gtest.h>
48ff58122SWilliam A. Kennington III 
58ff58122SWilliam A. Kennington III namespace gpioplus
68ff58122SWilliam A. Kennington III {
78ff58122SWilliam A. Kennington III namespace utility
88ff58122SWilliam A. Kennington III {
98ff58122SWilliam A. Kennington III namespace aspeed
108ff58122SWilliam A. Kennington III {
118ff58122SWilliam A. Kennington III namespace
128ff58122SWilliam A. Kennington III {
138ff58122SWilliam A. Kennington III 
TEST(AspeedTest,NameToOffset)148ff58122SWilliam A. Kennington III TEST(AspeedTest, NameToOffset)
158ff58122SWilliam A. Kennington III {
168ff58122SWilliam A. Kennington III     EXPECT_EQ(5, nameToOffset("A5"));
178ff58122SWilliam A. Kennington III     EXPECT_EQ(33, nameToOffset("E1"));
188ff58122SWilliam A. Kennington III     EXPECT_EQ(202, nameToOffset("Z2"));
198ff58122SWilliam A. Kennington III     EXPECT_EQ(208, nameToOffset("AA0"));
208ff58122SWilliam A. Kennington III     EXPECT_EQ(223, nameToOffset("AB7"));
218ff58122SWilliam A. Kennington III }
228ff58122SWilliam A. Kennington III 
TEST(AspeedTest,NameToOffsetShort)238ff58122SWilliam A. Kennington III TEST(AspeedTest, NameToOffsetShort)
248ff58122SWilliam A. Kennington III {
258ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset(""), std::logic_error);
268ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset("A"), std::logic_error);
278ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset("0"), std::logic_error);
288ff58122SWilliam A. Kennington III }
298ff58122SWilliam A. Kennington III 
TEST(AspeedTest,NameToOffsetBad)308ff58122SWilliam A. Kennington III TEST(AspeedTest, NameToOffsetBad)
318ff58122SWilliam A. Kennington III {
328ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset("00"), std::logic_error);
338ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset("AB"), std::logic_error);
348ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset(".1"), std::logic_error);
358ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset("A#"), std::logic_error);
368ff58122SWilliam A. Kennington III }
378ff58122SWilliam A. Kennington III 
TEST(AspeedTest,NameToOffsetMaybeBad)388ff58122SWilliam A. Kennington III TEST(AspeedTest, NameToOffsetMaybeBad)
398ff58122SWilliam A. Kennington III {
408ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset("BA0"), std::logic_error);
418ff58122SWilliam A. Kennington III     EXPECT_THROW(nameToOffset("AAA0"), std::logic_error);
428ff58122SWilliam A. Kennington III }
438ff58122SWilliam A. Kennington III 
448ff58122SWilliam A. Kennington III } // namespace
458ff58122SWilliam A. Kennington III } // namespace aspeed
468ff58122SWilliam A. Kennington III } // namespace utility
478ff58122SWilliam A. Kennington III } // namespace gpioplus
48