diff --git a/test/ipmi_startverify_unittest.cpp b/test/ipmi_startverify_unittest.cpp
new file mode 100644
index 0000000..87e818d
--- /dev/null
+++ b/test/ipmi_startverify_unittest.cpp
@@ -0,0 +1,32 @@
+#include "ipmi.hpp"
+
+#include "updater_mock.hpp"
+
+#include <gtest/gtest.h>
+
+using ::testing::Return;
+using ::testing::StrictMock;
+
+// ipmid.hpp isn't installed where we can grab it and this value is per BMC
+// SoC.
+#define MAX_IPMI_BUFFER 64
+
+TEST(IpmiStartDataVerifyTest, CallPassedOn)
+{
+    // The IPMI handler in this case just passes on the call and returns the
+    // result without any extra validation.
+
+    StrictMock<UpdaterMock> updater;
+
+    size_t dataLen;
+    uint8_t request[MAX_IPMI_BUFFER] = {0};
+    uint8_t reply[MAX_IPMI_BUFFER] = {0};
+
+    dataLen = 1; // request is only the command.
+    request[0] = FlashSubCmds::flashDataVerify;
+
+    EXPECT_CALL(updater, startDataVerification()).WillOnce(Return(true));
+    EXPECT_EQ(IPMI_CC_OK, dataVerify(&updater, request, reply, &dataLen));
+    EXPECT_EQ(sizeof(uint8_t), dataLen);
+    EXPECT_EQ(0, reply[0]);
+}
