|  | #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]); | 
|  | } |