firmware: add sdbusplus for use by verification
The verification process starts a systemd service implemented outside
the scope of this codebase. Therefore, add sdbusplus to the build and
inject into the object.
Change-Id: Icaacb5d60334da78f6363682f3b97714eb482dcf
Signed-off-by: Patrick Venture <venture@google.com>
diff --git a/test/firmware_handler_unittest.cpp b/test/firmware_handler_unittest.cpp
index ce65ad4..1457a3b 100644
--- a/test/firmware_handler_unittest.cpp
+++ b/test/firmware_handler_unittest.cpp
@@ -2,6 +2,7 @@
#include "image_mock.hpp"
#include <algorithm>
+#include <sdbusplus/test/sdbus_mock.hpp>
#include <vector>
#include <gtest/gtest.h>
@@ -15,7 +16,11 @@
{FirmwareBlobHandler::UpdateFlags::ipmi, nullptr},
};
- auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler({}, data);
+ sdbusplus::SdBusMock sdbus_mock;
+ auto bus_mock = sdbusplus::get_mocked_new(&sdbus_mock);
+
+ auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
+ std::move(bus_mock), {}, data);
EXPECT_EQ(handler, nullptr);
}
TEST(FirmwareHandlerTest, CreateEmptyDataHandlerListFails)
@@ -27,7 +32,11 @@
{"asdf", &imageMock},
};
- auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(blobs, {});
+ sdbusplus::SdBusMock sdbus_mock;
+ auto bus_mock = sdbusplus::get_mocked_new(&sdbus_mock);
+
+ auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
+ std::move(bus_mock), blobs, {});
EXPECT_EQ(handler, nullptr);
}
TEST(FirmwareHandlerTest, VerifyHashRequiredForHappiness)
@@ -42,12 +51,17 @@
{FirmwareBlobHandler::UpdateFlags::ipmi, nullptr},
};
- auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(blobs, data);
+ sdbusplus::SdBusMock sdbus_mock;
+ auto bus_mock = sdbusplus::get_mocked_new(&sdbus_mock);
+
+ auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
+ std::move(bus_mock), blobs, data);
EXPECT_EQ(handler, nullptr);
blobs.push_back({FirmwareBlobHandler::hashBlobID, &imageMock});
- handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(blobs, data);
+ handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
+ std::move(bus_mock), blobs, data);
auto result = handler->getBlobIds();
EXPECT_EQ(3, result.size());
EXPECT_EQ(3, std::count(result.begin(), result.end(), "asdf") +