merge Verification and Update Interfaces

Signed-off-by: Patrick Venture <venture@google.com>
Change-Id: I8c2548b9d6e15965cfdd49965bdc5dbe97d0dc94
diff --git a/firmware_handler.cpp b/firmware_handler.cpp
index d72c5c7..56ad3a2 100644
--- a/firmware_handler.cpp
+++ b/firmware_handler.cpp
@@ -17,8 +17,8 @@
 #include "firmware_handler.hpp"
 
 #include "image_handler.hpp"
+#include "status.hpp"
 #include "util.hpp"
-#include "verify.hpp"
 
 #include <algorithm>
 #include <cstdint>
@@ -38,8 +38,8 @@
     FirmwareBlobHandler::CreateFirmwareBlobHandler(
         const std::vector<HandlerPack>& firmwares,
         const std::vector<DataHandlerPack>& transports,
-        std::unique_ptr<VerificationInterface> verification,
-        std::unique_ptr<UpdateInterface> update)
+        std::unique_ptr<TriggerableActionInterface> verification,
+        std::unique_ptr<TriggerableActionInterface> update)
 {
     /* There must be at least one. */
     if (!firmwares.size())
@@ -708,7 +708,7 @@
 
 bool FirmwareBlobHandler::triggerVerification()
 {
-    bool result = verification->triggerVerification();
+    bool result = verification->trigger();
     if (result)
     {
         state = UpdateState::verificationStarted;
@@ -719,7 +719,7 @@
 
 bool FirmwareBlobHandler::triggerUpdate()
 {
-    bool result = update->triggerUpdate();
+    bool result = update->trigger();
     if (result)
     {
         state = UpdateState::updateStarted;
diff --git a/firmware_handler.hpp b/firmware_handler.hpp
index fd4f9ef..9aab59a 100644
--- a/firmware_handler.hpp
+++ b/firmware_handler.hpp
@@ -4,9 +4,8 @@
 
 #include "data_handler.hpp"
 #include "image_handler.hpp"
-#include "update.hpp"
+#include "status.hpp"
 #include "util.hpp"
-#include "verify.hpp"
 
 #include <algorithm>
 #include <blobs-ipmid/blobs.hpp>
@@ -118,8 +117,8 @@
     static std::unique_ptr<GenericBlobInterface> CreateFirmwareBlobHandler(
         const std::vector<HandlerPack>& firmwares,
         const std::vector<DataHandlerPack>& transports,
-        std::unique_ptr<VerificationInterface> verification,
-        std::unique_ptr<UpdateInterface> update);
+        std::unique_ptr<TriggerableActionInterface> verification,
+        std::unique_ptr<TriggerableActionInterface> update);
 
     /**
      * Create a FirmwareBlobHandler.
@@ -131,12 +130,12 @@
      * @param[in] verification - pointer to object for triggering verification
      * @param[in] update - point to object for triggering the update
      */
-    FirmwareBlobHandler(const std::vector<HandlerPack>& firmwares,
-                        const std::vector<std::string>& blobs,
-                        const std::vector<DataHandlerPack>& transports,
-                        std::uint16_t bitmask,
-                        std::unique_ptr<VerificationInterface> verification,
-                        std::unique_ptr<UpdateInterface> update) :
+    FirmwareBlobHandler(
+        const std::vector<HandlerPack>& firmwares,
+        const std::vector<std::string>& blobs,
+        const std::vector<DataHandlerPack>& transports, std::uint16_t bitmask,
+        std::unique_ptr<TriggerableActionInterface> verification,
+        std::unique_ptr<TriggerableActionInterface> update) :
         handlers(firmwares),
         blobIDs(blobs), transports(transports), bitmask(bitmask),
         activeImage(activeImageBlobId), activeHash(activeHashBlobId),
@@ -228,9 +227,9 @@
     /** The firmware update state. */
     UpdateState state;
 
-    std::unique_ptr<VerificationInterface> verification;
+    std::unique_ptr<TriggerableActionInterface> verification;
 
-    std::unique_ptr<UpdateInterface> update;
+    std::unique_ptr<TriggerableActionInterface> update;
 
     /** Temporary variable to track whether a blob is open. */
     bool fileOpen = false;
diff --git a/main.cpp b/main.cpp
index 36b4ee7..09a9713 100644
--- a/main.cpp
+++ b/main.cpp
@@ -23,9 +23,9 @@
 #include "lpc_handler.hpp"
 #include "lpc_nuvoton.hpp"
 #include "pci_handler.hpp"
+#include "status.hpp"
 #include "update_systemd.hpp"
 #include "util.hpp"
-#include "verify.hpp"
 #include "verify_systemd.hpp"
 
 #include <cstdint>
diff --git a/status.hpp b/status.hpp
index 2789d9c..869fe89 100644
--- a/status.hpp
+++ b/status.hpp
@@ -14,4 +14,23 @@
     unknown = 3,
 };
 
+class TriggerableActionInterface
+{
+  public:
+    virtual ~TriggerableActionInterface() = default;
+
+    /**
+     * Trigger action.
+     *
+     * @return true if successfully started, false otherwise.
+     */
+    virtual bool trigger() = 0;
+
+    /** Abort the action if possible. */
+    virtual void abort() = 0;
+
+    /** Check the current state of the action. */
+    virtual ActionStatus status() = 0;
+};
+
 } // namespace ipmi_flash
diff --git a/test/bmc_update_mock.hpp b/test/bmc_update_mock.hpp
deleted file mode 100644
index 296b513..0000000
--- a/test/bmc_update_mock.hpp
+++ /dev/null
@@ -1,27 +0,0 @@
-#pragma once
-
-#include "status.hpp"
-#include "update.hpp"
-
-#include <memory>
-#include <vector>
-
-#include <gmock/gmock.h>
-
-namespace ipmi_flash
-{
-
-class UpdateMock : public UpdateInterface
-{
-  public:
-    MOCK_METHOD0(triggerUpdate, bool());
-    MOCK_METHOD0(abortUpdate, void());
-    MOCK_METHOD0(status, ActionStatus());
-};
-
-std::unique_ptr<UpdateInterface> CreateUpdateMock()
-{
-    return std::make_unique<UpdateMock>();
-}
-
-} // namespace ipmi_flash
diff --git a/test/firmware_canhandle_unittest.cpp b/test/firmware_canhandle_unittest.cpp
index c9685bd..7fb4c7f 100644
--- a/test/firmware_canhandle_unittest.cpp
+++ b/test/firmware_canhandle_unittest.cpp
@@ -1,9 +1,8 @@
-#include "bmc_update_mock.hpp"
 #include "data_mock.hpp"
 #include "firmware_handler.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <vector>
 
@@ -34,7 +33,7 @@
     };
 
     auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        blobs, data, CreateVerifyMock(), CreateUpdateMock());
+        blobs, data, CreateTriggerMock(), CreateTriggerMock());
 
     for (const auto& item : items)
     {
diff --git a/test/firmware_close_unittest.cpp b/test/firmware_close_unittest.cpp
index a46973f..66b9c83 100644
--- a/test/firmware_close_unittest.cpp
+++ b/test/firmware_close_unittest.cpp
@@ -2,8 +2,8 @@
 #include "firmware_handler.hpp"
 #include "firmware_unittest.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <memory>
 #include <vector>
diff --git a/test/firmware_commit_unittest.cpp b/test/firmware_commit_unittest.cpp
index 37e619e..11ce3fc 100644
--- a/test/firmware_commit_unittest.cpp
+++ b/test/firmware_commit_unittest.cpp
@@ -1,9 +1,8 @@
-#include "bmc_update_mock.hpp"
 #include "data_mock.hpp"
 #include "firmware_handler.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <memory>
 #include <vector>
@@ -46,11 +45,11 @@
      */
 
     /* Verify it doesn't get called by using StrictMock. */
-    std::unique_ptr<VerificationInterface> verifyMock =
-        std::make_unique<StrictMock<VerificationMock>>();
+    std::unique_ptr<TriggerableActionInterface> verifyMock =
+        std::make_unique<StrictMock<TriggerMock>>();
 
     auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        blobs, data, std::move(verifyMock), CreateUpdateMock());
+        blobs, data, std::move(verifyMock), CreateTriggerMock());
 
     EXPECT_CALL(imageMock2, open("asdf")).WillOnce(Return(true));
 
@@ -68,11 +67,11 @@
      */
 
     /* Verify it doesn't get called by using StrictMock. */
-    std::unique_ptr<VerificationInterface> verifyMock =
-        std::make_unique<StrictMock<VerificationMock>>();
+    std::unique_ptr<TriggerableActionInterface> verifyMock =
+        std::make_unique<StrictMock<TriggerMock>>();
 
     auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        blobs, data, std::move(verifyMock), CreateUpdateMock());
+        blobs, data, std::move(verifyMock), CreateTriggerMock());
 
     EXPECT_CALL(imageMock1, open(StrEq(hashBlobId))).WillOnce(Return(true));
 
diff --git a/test/firmware_createhandler_unittest.cpp b/test/firmware_createhandler_unittest.cpp
index 3bc52fe..dc6d968 100644
--- a/test/firmware_createhandler_unittest.cpp
+++ b/test/firmware_createhandler_unittest.cpp
@@ -1,9 +1,8 @@
-#include "bmc_update_mock.hpp"
 #include "data_mock.hpp"
 #include "firmware_handler.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <gtest/gtest.h>
 
@@ -32,7 +31,7 @@
     };
 
     auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        blobs, data, CreateVerifyMock(), CreateUpdateMock());
+        blobs, data, CreateTriggerMock(), CreateTriggerMock());
 
     //    EXPECT_EQ(handler, nullptr);
     EXPECT_FALSE(handler == nullptr);
diff --git a/test/firmware_delete_unittest.cpp b/test/firmware_delete_unittest.cpp
index ff2d7b3..058295d 100644
--- a/test/firmware_delete_unittest.cpp
+++ b/test/firmware_delete_unittest.cpp
@@ -1,10 +1,9 @@
-#include "bmc_update_mock.hpp"
 #include "data_mock.hpp"
 #include "firmware_handler.hpp"
 #include "firmware_unittest.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <vector>
 
diff --git a/test/firmware_handler_unittest.cpp b/test/firmware_handler_unittest.cpp
index e2ef7f4..a5d60f5 100644
--- a/test/firmware_handler_unittest.cpp
+++ b/test/firmware_handler_unittest.cpp
@@ -1,8 +1,7 @@
-#include "bmc_update_mock.hpp"
 #include "firmware_handler.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <algorithm>
 #include <vector>
@@ -23,7 +22,7 @@
     };
 
     auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        {}, data, CreateVerifyMock(), CreateUpdateMock());
+        {}, data, CreateTriggerMock(), CreateTriggerMock());
     EXPECT_EQ(handler, nullptr);
 }
 TEST(FirmwareHandlerTest, CreateEmptyDataHandlerListFails)
@@ -36,7 +35,7 @@
     };
 
     auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        blobs, {}, CreateVerifyMock(), CreateUpdateMock());
+        blobs, {}, CreateTriggerMock(), CreateTriggerMock());
     EXPECT_EQ(handler, nullptr);
 }
 TEST(FirmwareHandlerTest, VerifyHashRequiredForHappiness)
@@ -52,13 +51,13 @@
     };
 
     auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        blobs, data, CreateVerifyMock(), CreateUpdateMock());
+        blobs, data, CreateTriggerMock(), CreateTriggerMock());
     EXPECT_EQ(handler, nullptr);
 
     blobs.push_back({hashBlobId, &imageMock});
 
     handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        blobs, data, CreateVerifyMock(), CreateUpdateMock());
+        blobs, data, CreateTriggerMock(), CreateTriggerMock());
     auto result = handler->getBlobIds();
     std::vector<std::string> expectedBlobs = {"asdf", hashBlobId};
     EXPECT_THAT(result, UnorderedElementsAreArray(expectedBlobs));
diff --git a/test/firmware_open_unittest.cpp b/test/firmware_open_unittest.cpp
index 8190a47..7df0743 100644
--- a/test/firmware_open_unittest.cpp
+++ b/test/firmware_open_unittest.cpp
@@ -2,8 +2,8 @@
 #include "firmware_handler.hpp"
 #include "firmware_unittest.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <memory>
 #include <vector>
diff --git a/test/firmware_sessionstat_unittest.cpp b/test/firmware_sessionstat_unittest.cpp
index a484716..d2d1896 100644
--- a/test/firmware_sessionstat_unittest.cpp
+++ b/test/firmware_sessionstat_unittest.cpp
@@ -2,8 +2,8 @@
 #include "firmware_handler.hpp"
 #include "firmware_unittest.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <vector>
 
diff --git a/test/firmware_stat_unittest.cpp b/test/firmware_stat_unittest.cpp
index 1960c44..4efae94 100644
--- a/test/firmware_stat_unittest.cpp
+++ b/test/firmware_stat_unittest.cpp
@@ -1,8 +1,7 @@
-#include "bmc_update_mock.hpp"
 #include "firmware_handler.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <vector>
 
@@ -30,7 +29,7 @@
     };
 
     auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-        blobs, data, CreateVerifyMock(), CreateUpdateMock());
+        blobs, data, CreateTriggerMock(), CreateTriggerMock());
 
     blobs::BlobMeta meta;
     EXPECT_TRUE(handler->stat("asdf", &meta));
diff --git a/test/firmware_state_updatecompleted_unittest.cpp b/test/firmware_state_updatecompleted_unittest.cpp
index 324a307..625e075 100644
--- a/test/firmware_state_updatecompleted_unittest.cpp
+++ b/test/firmware_state_updatecompleted_unittest.cpp
@@ -162,7 +162,7 @@
 {
     getToUpdateCompleted(ActionStatus::success);
 
-    EXPECT_CALL(*updateMockPtr, triggerUpdate()).Times(0);
+    EXPECT_CALL(*updateMockPtr, trigger()).Times(0);
     EXPECT_FALSE(handler->commit(session, {}));
 }
 
@@ -171,7 +171,7 @@
 {
     getToUpdateCompleted(ActionStatus::failed);
 
-    EXPECT_CALL(*updateMockPtr, triggerUpdate()).Times(0);
+    EXPECT_CALL(*updateMockPtr, trigger()).Times(0);
     EXPECT_FALSE(handler->commit(session, {}));
 }
 
diff --git a/test/firmware_state_updatepending_unittest.cpp b/test/firmware_state_updatepending_unittest.cpp
index 00bdc2a..31c88e9 100644
--- a/test/firmware_state_updatepending_unittest.cpp
+++ b/test/firmware_state_updatepending_unittest.cpp
@@ -215,7 +215,7 @@
     EXPECT_TRUE(handler->open(session, flags, updateBlobId));
     expectedState(FirmwareBlobHandler::UpdateState::updatePending);
 
-    EXPECT_CALL(*updateMockPtr, triggerUpdate()).WillOnce(Return(true));
+    EXPECT_CALL(*updateMockPtr, trigger()).WillOnce(Return(true));
 
     EXPECT_TRUE(handler->commit(session, {}));
     expectedState(FirmwareBlobHandler::UpdateState::updateStarted);
@@ -228,7 +228,7 @@
     EXPECT_TRUE(handler->open(session, flags, updateBlobId));
     expectedState(FirmwareBlobHandler::UpdateState::updatePending);
 
-    EXPECT_CALL(*updateMockPtr, triggerUpdate()).WillOnce(Return(false));
+    EXPECT_CALL(*updateMockPtr, trigger()).WillOnce(Return(false));
 
     EXPECT_FALSE(handler->commit(session, {}));
     expectedState(FirmwareBlobHandler::UpdateState::updatePending);
diff --git a/test/firmware_state_updatestarted_unittest.cpp b/test/firmware_state_updatestarted_unittest.cpp
index 6b55b4e..420d7a7 100644
--- a/test/firmware_state_updatestarted_unittest.cpp
+++ b/test/firmware_state_updatestarted_unittest.cpp
@@ -148,7 +148,7 @@
        CallingCommitShouldReturnTrueAndHaveNoEffect)
 {
     getToUpdateStarted();
-    EXPECT_CALL(*updateMockPtr, triggerUpdate()).Times(0);
+    EXPECT_CALL(*updateMockPtr, trigger()).Times(0);
 
     EXPECT_TRUE(handler->commit(session, {}));
     expectedState(FirmwareBlobHandler::UpdateState::updateStarted);
diff --git a/test/firmware_state_verificationcompleted_unittest.cpp b/test/firmware_state_verificationcompleted_unittest.cpp
index 90338f0..d9b4e70 100644
--- a/test/firmware_state_verificationcompleted_unittest.cpp
+++ b/test/firmware_state_verificationcompleted_unittest.cpp
@@ -251,7 +251,7 @@
      * let you try-again.
      */
     getToVerificationCompleted(ActionStatus::success);
-    EXPECT_CALL(*verifyMockPtr, triggerVerification()).Times(0);
+    EXPECT_CALL(*verifyMockPtr, trigger()).Times(0);
 
     EXPECT_FALSE(handler->commit(session, {}));
 }
@@ -260,7 +260,7 @@
        CommitOnVerifyBlobAfterFailureReturnsFailure)
 {
     getToVerificationCompleted(ActionStatus::failed);
-    EXPECT_CALL(*verifyMockPtr, triggerVerification()).Times(0);
+    EXPECT_CALL(*verifyMockPtr, trigger()).Times(0);
 
     EXPECT_FALSE(handler->commit(session, {}));
 }
diff --git a/test/firmware_state_verificationpending_unittest.cpp b/test/firmware_state_verificationpending_unittest.cpp
index d22b887..b7c1bfc 100644
--- a/test/firmware_state_verificationpending_unittest.cpp
+++ b/test/firmware_state_verificationpending_unittest.cpp
@@ -192,7 +192,7 @@
 {
     getToVerificationPending(staticLayoutBlobId);
     EXPECT_TRUE(handler->open(session, flags, verifyBlobId));
-    EXPECT_CALL(*verifyMockPtr, triggerVerification()).WillOnce(Return(true));
+    EXPECT_CALL(*verifyMockPtr, trigger()).WillOnce(Return(true));
 
     EXPECT_TRUE(handler->commit(session, {}));
     expectedState(FirmwareBlobHandler::UpdateState::verificationStarted);
@@ -209,7 +209,7 @@
      */
     getToVerificationPending(staticLayoutBlobId);
     EXPECT_TRUE(handler->open(session, flags, verifyBlobId));
-    EXPECT_CALL(*verifyMockPtr, triggerVerification()).Times(0);
+    EXPECT_CALL(*verifyMockPtr, trigger()).Times(0);
     EXPECT_CALL(*verifyMockPtr, status()).Times(0);
 
     blobs::BlobMeta meta, expectedMeta = {};
diff --git a/test/firmware_unittest.hpp b/test/firmware_unittest.hpp
index 11d49bf..a79cd4f 100644
--- a/test/firmware_unittest.hpp
+++ b/test/firmware_unittest.hpp
@@ -1,10 +1,9 @@
 #pragma once
 
-#include "bmc_update_mock.hpp"
 #include "data_mock.hpp"
 #include "firmware_handler.hpp"
 #include "image_mock.hpp"
-#include "verification_mock.hpp"
+#include "triggerable_mock.hpp"
 
 #include <memory>
 #include <vector>
@@ -29,13 +28,13 @@
             {staticLayoutBlobId, &imageMock},
         };
 
-        std::unique_ptr<VerificationInterface> verifyMock =
-            std::make_unique<VerificationMock>();
-        verifyMockPtr = reinterpret_cast<VerificationMock*>(verifyMock.get());
+        std::unique_ptr<TriggerableActionInterface> verifyMock =
+            std::make_unique<TriggerMock>();
+        verifyMockPtr = reinterpret_cast<TriggerMock*>(verifyMock.get());
 
-        std::unique_ptr<UpdateInterface> updateMock =
-            std::make_unique<UpdateMock>();
-        updateMockPtr = reinterpret_cast<UpdateMock*>(updateMock.get());
+        std::unique_ptr<TriggerableActionInterface> updateMock =
+            std::make_unique<TriggerMock>();
+        updateMockPtr = reinterpret_cast<TriggerMock*>(updateMock.get());
 
         handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
             blobs, data, std::move(verifyMock), std::move(updateMock));
@@ -68,8 +67,7 @@
         getToVerificationPending(blobId);
 
         EXPECT_TRUE(handler->open(session, flags, verifyBlobId));
-        EXPECT_CALL(*verifyMockPtr, triggerVerification())
-            .WillOnce(Return(true));
+        EXPECT_CALL(*verifyMockPtr, trigger()).WillOnce(Return(true));
 
         EXPECT_TRUE(handler->commit(session, {}));
         expectedState(FirmwareBlobHandler::UpdateState::verificationStarted);
@@ -98,7 +96,7 @@
         getToUpdatePending();
         EXPECT_TRUE(handler->open(session, flags, updateBlobId));
 
-        EXPECT_CALL(*updateMockPtr, triggerUpdate()).WillOnce(Return(true));
+        EXPECT_CALL(*updateMockPtr, trigger()).WillOnce(Return(true));
         EXPECT_TRUE(handler->commit(session, {}));
         expectedState(FirmwareBlobHandler::UpdateState::updateStarted);
     }
@@ -118,8 +116,8 @@
     std::vector<DataHandlerPack> data = {
         {FirmwareBlobHandler::UpdateFlags::ipmi, nullptr}};
     std::unique_ptr<blobs::GenericBlobInterface> handler;
-    VerificationMock* verifyMockPtr;
-    UpdateMock* updateMockPtr;
+    TriggerMock* verifyMockPtr;
+    TriggerMock* updateMockPtr;
 
     std::uint16_t session = 1;
     std::uint16_t flags =
@@ -142,7 +140,7 @@
             {"asdf", &imageMock},
         };
         handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-            blobs, data, CreateVerifyMock(), CreateUpdateMock());
+            blobs, data, CreateTriggerMock(), CreateTriggerMock());
     }
 };
 
@@ -166,7 +164,7 @@
             {FirmwareBlobHandler::UpdateFlags::lpc, &dataMock},
         };
         handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
-            blobs, data, CreateVerifyMock(), CreateUpdateMock());
+            blobs, data, CreateTriggerMock(), CreateTriggerMock());
     }
 };
 
diff --git a/test/firmware_write_unittest.cpp b/test/firmware_write_unittest.cpp
index f4f78fc..d74f3c8 100644
--- a/test/firmware_write_unittest.cpp
+++ b/test/firmware_write_unittest.cpp
@@ -2,8 +2,8 @@
 #include "firmware_handler.hpp"
 #include "firmware_unittest.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <cstdint>
 #include <cstring>
diff --git a/test/firmware_writemeta_unittest.cpp b/test/firmware_writemeta_unittest.cpp
index e7d8463..491d669 100644
--- a/test/firmware_writemeta_unittest.cpp
+++ b/test/firmware_writemeta_unittest.cpp
@@ -2,8 +2,8 @@
 #include "firmware_handler.hpp"
 #include "firmware_unittest.hpp"
 #include "image_mock.hpp"
+#include "triggerable_mock.hpp"
 #include "util.hpp"
-#include "verification_mock.hpp"
 
 #include <memory>
 #include <vector>
diff --git a/test/triggerable_mock.hpp b/test/triggerable_mock.hpp
new file mode 100644
index 0000000..c485d8e
--- /dev/null
+++ b/test/triggerable_mock.hpp
@@ -0,0 +1,24 @@
+#pragma once
+
+#include "status.hpp"
+
+#include <gtest/gtest.h>
+
+namespace ipmi_flash
+{
+// TriggerableActionInterface
+
+class TriggerMock : public TriggerableActionInterface
+{
+  public:
+    MOCK_METHOD0(trigger, bool());
+    MOCK_METHOD0(abort, void());
+    MOCK_METHOD0(status, ActionStatus());
+};
+
+std::unique_ptr<TriggerableActionInterface> CreateTriggerMock()
+{
+    return std::make_unique<TriggerMock>();
+}
+
+} // namespace ipmi_flash
diff --git a/test/verification_mock.hpp b/test/verification_mock.hpp
deleted file mode 100644
index 728411b..0000000
--- a/test/verification_mock.hpp
+++ /dev/null
@@ -1,27 +0,0 @@
-#pragma once
-
-#include "status.hpp"
-#include "verify.hpp"
-
-#include <memory>
-#include <vector>
-
-#include <gtest/gtest.h>
-
-namespace ipmi_flash
-{
-
-class VerificationMock : public VerificationInterface
-{
-  public:
-    MOCK_METHOD0(triggerVerification, bool());
-    MOCK_METHOD0(abortVerification, void());
-    MOCK_METHOD0(status, ActionStatus());
-};
-
-std::unique_ptr<VerificationInterface> CreateVerifyMock()
-{
-    return std::make_unique<VerificationMock>();
-}
-
-} // namespace ipmi_flash
diff --git a/update.hpp b/update.hpp
deleted file mode 100644
index 8f2b03f..0000000
--- a/update.hpp
+++ /dev/null
@@ -1,27 +0,0 @@
-#pragma once
-
-#include "status.hpp"
-
-namespace ipmi_flash
-{
-
-class UpdateInterface
-{
-  public:
-    virtual ~UpdateInterface() = default;
-
-    /**
-     * Trigger the update mechanism.
-     *
-     * @return true if successfully started, false otherwise.
-     */
-    virtual bool triggerUpdate() = 0;
-
-    /** Abort the update process. */
-    virtual void abortUpdate() = 0;
-
-    /** Check the current state of the update process. */
-    virtual ActionStatus status() = 0;
-};
-
-} // namespace ipmi_flash
diff --git a/update_systemd.cpp b/update_systemd.cpp
index e81b2bc..d8f2329 100644
--- a/update_systemd.cpp
+++ b/update_systemd.cpp
@@ -17,7 +17,6 @@
 #include "update_systemd.hpp"
 
 #include "status.hpp"
-#include "update.hpp"
 
 #include <memory>
 #include <sdbusplus/bus.hpp>
@@ -26,7 +25,7 @@
 namespace ipmi_flash
 {
 
-std::unique_ptr<UpdateInterface>
+std::unique_ptr<TriggerableActionInterface>
     SystemdUpdateMechanism::CreateSystemdUpdate(sdbusplus::bus::bus&& bus,
                                                 const std::string& target,
                                                 const std::string& mode)
@@ -35,7 +34,7 @@
                                                     mode);
 }
 
-bool SystemdUpdateMechanism::triggerUpdate()
+bool SystemdUpdateMechanism::trigger()
 {
     /* TODO: Add a util method for triggering a service with optional additional
      * parameter. */
@@ -63,7 +62,7 @@
     }
 }
 
-void SystemdUpdateMechanism::abortUpdate()
+void SystemdUpdateMechanism::abort()
 {
     return;
 }
diff --git a/update_systemd.hpp b/update_systemd.hpp
index 693beb4..15d616f 100644
--- a/update_systemd.hpp
+++ b/update_systemd.hpp
@@ -1,6 +1,6 @@
 #pragma once
 
-#include "update.hpp"
+#include "status.hpp"
 
 #include <memory>
 #include <sdbusplus/bus.hpp>
@@ -12,10 +12,10 @@
 /**
  * Implements the update interface by simply triggering a systemd unit.
  */
-class SystemdUpdateMechanism : public UpdateInterface
+class SystemdUpdateMechanism : public TriggerableActionInterface
 {
   public:
-    static std::unique_ptr<UpdateInterface>
+    static std::unique_ptr<TriggerableActionInterface>
         CreateSystemdUpdate(sdbusplus::bus::bus&& bus,
                             const std::string& target,
                             const std::string& mode = "");
@@ -33,8 +33,8 @@
     SystemdUpdateMechanism(SystemdUpdateMechanism&&) = default;
     SystemdUpdateMechanism& operator=(SystemdUpdateMechanism&&) = default;
 
-    bool triggerUpdate() override;
-    void abortUpdate() override;
+    bool trigger() override;
+    void abort() override;
     ActionStatus status() override;
 
   private:
diff --git a/verify.hpp b/verify.hpp
deleted file mode 100644
index 6c70d54..0000000
--- a/verify.hpp
+++ /dev/null
@@ -1,30 +0,0 @@
-#pragma once
-
-#include "status.hpp"
-
-#include <memory>
-#include <string>
-
-namespace ipmi_flash
-{
-
-class VerificationInterface
-{
-  public:
-    virtual ~VerificationInterface() = default;
-
-    /**
-     * Trigger verification service.
-     *
-     * @return true if successfully started, false otherwise.
-     */
-    virtual bool triggerVerification() = 0;
-
-    /** Abort the verification process. */
-    virtual void abortVerification() = 0;
-
-    /** Check the current state of the verification process. */
-    virtual ActionStatus status() = 0;
-};
-
-} // namespace ipmi_flash
diff --git a/verify_systemd.cpp b/verify_systemd.cpp
index 73d9f24..f7b88b0 100644
--- a/verify_systemd.cpp
+++ b/verify_systemd.cpp
@@ -17,7 +17,6 @@
 #include "verify_systemd.hpp"
 
 #include "status.hpp"
-#include "verify.hpp"
 
 #include <fstream>
 #include <memory>
@@ -28,7 +27,7 @@
 namespace ipmi_flash
 {
 
-std::unique_ptr<VerificationInterface>
+std::unique_ptr<TriggerableActionInterface>
     SystemdVerification::CreateVerification(sdbusplus::bus::bus&& bus,
                                             const std::string& path,
                                             const std::string& service)
@@ -36,7 +35,7 @@
     return std::make_unique<SystemdVerification>(std::move(bus), path, service);
 }
 
-bool SystemdVerification::triggerVerification()
+bool SystemdVerification::trigger()
 {
     static constexpr auto systemdService = "org.freedesktop.systemd1";
     static constexpr auto systemdRoot = "/org/freedesktop/systemd1";
@@ -62,7 +61,7 @@
     return true;
 }
 
-void SystemdVerification::abortVerification()
+void SystemdVerification::abort()
 {
     /* TODO: Implement this. */
 }
diff --git a/verify_systemd.hpp b/verify_systemd.hpp
index 9b2cbab..894b534 100644
--- a/verify_systemd.hpp
+++ b/verify_systemd.hpp
@@ -1,7 +1,6 @@
 #pragma once
 
 #include "status.hpp"
-#include "verify.hpp"
 
 #include <memory>
 #include <sdbusplus/bus.hpp>
@@ -16,7 +15,7 @@
  * verification step, however, it leaves room for a future possibility out
  * something wholly configurable.
  */
-class SystemdVerification : public VerificationInterface
+class SystemdVerification : public TriggerableActionInterface
 {
   public:
     /**
@@ -28,7 +27,7 @@
      * @param[in[ service - the systemd service to start to trigger
      * verification.
      */
-    static std::unique_ptr<VerificationInterface>
+    static std::unique_ptr<TriggerableActionInterface>
         CreateVerification(sdbusplus::bus::bus&& bus, const std::string& path,
                            const std::string& service);
 
@@ -45,8 +44,8 @@
     SystemdVerification(SystemdVerification&&) = default;
     SystemdVerification& operator=(SystemdVerification&&) = default;
 
-    bool triggerVerification() override;
-    void abortVerification() override;
+    bool trigger() override;
+    void abort() override;
     ActionStatus status() override;
 
   private: