1 #include "powercap.hpp" 2 3 #include <experimental/filesystem> 4 #include <occ_events.hpp> 5 #include <occ_manager.hpp> 6 7 #include <gtest/gtest.h> 8 9 using namespace open_power::occ; 10 11 class VerifyOccInput : public ::testing::Test 12 { 13 public: 14 VerifyOccInput() : 15 bus(sdbusplus::bus::new_default()), rc(sd_event_default(&event)), 16 eventP(event), manager(bus, eventP), 17 occStatus(bus, eventP, "/test/path/occ1", manager), pcap(bus, occStatus) 18 { 19 EXPECT_GE(rc, 0); 20 event = nullptr; 21 } 22 ~VerifyOccInput() 23 { 24 } 25 26 sdbusplus::bus::bus bus; 27 sd_event* event; 28 int rc; 29 open_power::occ::EventPtr eventP; 30 31 Manager manager; 32 Status occStatus; 33 powercap::PowerCap pcap; 34 }; 35 36 TEST_F(VerifyOccInput, PcapDisabled) 37 { 38 uint32_t occInput = pcap.getOccInput(100, false); 39 EXPECT_EQ(occInput, 0); 40 } 41 42 TEST_F(VerifyOccInput, PcapEnabled) 43 { 44 uint32_t occInput = pcap.getOccInput(100, true); 45 EXPECT_EQ(occInput, 90); 46 } 47 48 TEST(VerifyPathParsing, EmptyPath) 49 { 50 std::experimental::filesystem::path path = ""; 51 std::string parsed = Device::getPathBack(path); 52 53 EXPECT_STREQ(parsed.c_str(), ""); 54 } 55 56 TEST(VerifyPathParsing, FilenamePath) 57 { 58 std::experimental::filesystem::path path = "/test/foo.bar"; 59 std::string parsed = Device::getPathBack(path); 60 61 EXPECT_STREQ(parsed.c_str(), "foo.bar"); 62 } 63 64 TEST(VerifyPathParsing, DirectoryPath) 65 { 66 std::experimental::filesystem::path path = "/test/bar/"; 67 std::string parsed = Device::getPathBack(path); 68 69 EXPECT_STREQ(parsed.c_str(), "bar"); 70 } 71