psu-ng: Clear faults if VIN_UV and READ_VIN good

If we see that we have set the VIN_UV fault indicator, but the READ_VIN
value is returning a non-zero voltage for input, attempt to clear the
faults. This could be a latched input voltage under-voltage condition
that has now cleared.

Save off actualVoltage in PowerSupply member variable. This allows for
comparing the previous actual voltage with the new reading, to trace out
the actual voltage instead of the calculated 0/110/220 voltage.

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Change-Id: Ibf1642a081ccf4d4a9c4202ce2536799806af017
diff --git a/phosphor-power-supply/test/power_supply_tests.cpp b/phosphor-power-supply/test/power_supply_tests.cpp
index 8bcbf16..63f03db 100644
--- a/phosphor-power-supply/test/power_supply_tests.cpp
+++ b/phosphor-power-supply/test/power_supply_tests.cpp
@@ -1058,10 +1058,10 @@
     for (auto x = 1; x <= DEGLITCH_LIMIT; x++)
     {
         setPMBusExpectations(mockPMBus, expectations);
-        // Also get another read of READ_VIN.
+        // Also get another read of READ_VIN, faulted, so not in 100-volt range
         EXPECT_CALL(mockPMBus, readString(READ_VIN, _))
             .Times(1)
-            .WillOnce(Return("125790"));
+            .WillOnce(Return("19000"));
         if (x == DEGLITCH_LIMIT)
         {
             EXPECT_CALL(mockedUtil, setAvailable(_, _, false));