#pragma once #include #include using sdbusplus::Timer; class TimerTest : public ::testing::Test { public: // systemd event handler sd_event* events = nullptr; // Need this so that events can be initialized. int rc; // Source of event sd_event_source* eventSource = nullptr; // Add a Timer Object Timer timer; // Gets called as part of each TEST_F construction TimerTest() : rc(sd_event_default(&events)), timer(events) { // Check for successful creation of // event handler and timer object. EXPECT_GE(rc, 0); } // Gets called as part of each TEST_F destruction ~TimerTest() override { events = sd_event_unref(events); } }; class TimerTestCallBack : public ::testing::Test { public: // systemd event handler sd_event* events; // Need this so that events can be initialized. int rc; // Source of event sd_event_source* eventSource = nullptr; // Add a Timer Object std::unique_ptr timer = nullptr; // Indicates optional call back fun was called bool callBackDone = false; void callBack() { callBackDone = true; } // Gets called as part of each TEST_F construction TimerTestCallBack() : rc(sd_event_default(&events)) { // Check for successful creation of // event handler and timer object. EXPECT_GE(rc, 0); std::function func( std::bind(&TimerTestCallBack::callBack, this)); timer = std::make_unique(events, func); } // Gets called as part of each TEST_F destruction ~TimerTestCallBack() override { events = sd_event_unref(events); } };