From aee9c2c452db3ce43df62a0ac779fda6e65a64ca Mon Sep 17 00:00:00 2001 From: Andrew Jeffery Date: Fri, 25 May 2018 14:05:40 +0930 Subject: test: physical: Hit both branches of stableStateOperation() Change-Id: Ic32d87dbe996a03e811e1be88fbcc00bf450e1f3 Signed-off-by: Andrew Jeffery --- physical.hpp | 4 ++-- test/physical.cpp | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/physical.hpp b/physical.hpp index c8ef4fd..3d99066 100644 --- a/physical.hpp +++ b/physical.hpp @@ -13,10 +13,10 @@ namespace phosphor namespace led { /** @brief Assert LED by writing 255 */ -constexpr auto ASSERT = 255; +constexpr unsigned long ASSERT = 255; /** @brief De-assert by writing "0" */ -constexpr auto DEASSERT = 0; +constexpr unsigned long DEASSERT = 0; /** @class Physical * @brief Responsible for applying actions on a particular physical LED diff --git a/test/physical.cpp b/test/physical.cpp index 9312598..f62caa2 100644 --- a/test/physical.cpp +++ b/test/physical.cpp @@ -66,6 +66,7 @@ class MockLed : public phosphor::led::SysfsLed MOCK_METHOD1(setDelayOff, void(unsigned long ms)); }; +using ::testing::InSequence; using ::testing::NiceMock; using ::testing::Return; using ::testing::Throw; @@ -125,3 +126,20 @@ TEST(Physical, ctor_none_trigger_asserted_brightness) EXPECT_CALL(led, getBrightness()).WillRepeatedly(Return(val)); phosphor::led::Physical phy(bus, LED_OBJ, led); } + +TEST(Physical, on_to_off) +{ + InSequence s; + + auto bus = sdbusplus::bus::new_default(); + NiceMock led; + EXPECT_CALL(led, getTrigger()).Times(1).WillOnce(Return("none")); + constexpr auto deasserted = phosphor::led::DEASSERT; + EXPECT_CALL(led, getBrightness()).WillOnce(Return(deasserted)); + constexpr auto asserted = phosphor::led::ASSERT; + EXPECT_CALL(led, setBrightness(asserted)); + EXPECT_CALL(led, setBrightness(deasserted)); + phosphor::led::Physical phy(bus, LED_OBJ, led); + phy.state(Action::On); + phy.state(Action::Off); +} -- cgit v1.2.1