xref: /openbmc/phosphor-ipmi-flash/bmc/version-handler/test/version_createhandler_unittest.cpp (revision abf17354324e2ad81bbbf2c63dbdffc5453b62b8)
1 #include "version_handler.hpp"
2 #include "version_mock.hpp"
3 
4 #include <array>
5 #include <utility>
6 
7 #include <gtest/gtest.h>
8 
9 namespace ipmi_flash
10 {
11 
TEST(VersionHandlerCanHandleTest,VerifyGoodInfoMapPasses)12 TEST(VersionHandlerCanHandleTest, VerifyGoodInfoMapPasses)
13 {
14     constexpr std::array blobs{"blob0", "blob1"};
15     VersionBlobHandler handler(createMockVersionConfigs(blobs));
16     EXPECT_THAT(handler.getBlobIds(),
17                 testing::UnorderedElementsAreArray(blobs));
18 }
19 
TEST(VersionHandlerCanHandleTest,VerifyDuplicatesIgnored)20 TEST(VersionHandlerCanHandleTest, VerifyDuplicatesIgnored)
21 {
22     constexpr std::array blobs{"blob0"};
23     auto configs = createMockVersionConfigs(blobs);
24     configs.push_back(createMockVersionConfig(blobs[0]));
25     VersionBlobHandler handler(std::move(configs));
26     EXPECT_THAT(handler.getBlobIds(),
27                 testing::UnorderedElementsAreArray(blobs));
28 }
29 
30 } // namespace ipmi_flash
31