1*90e4f058SAlexander Hansen 2*90e4f058SAlexander Hansen #include "entity_manager/log_device_inventory.hpp" 3*90e4f058SAlexander Hansen 4*90e4f058SAlexander Hansen #include <gtest/gtest.h> 5*90e4f058SAlexander Hansen 6*90e4f058SAlexander Hansen TEST(LogDevicInventory, QueryInvInfoSuccess) 7*90e4f058SAlexander Hansen { 8*90e4f058SAlexander Hansen nlohmann::json record = nlohmann::json::parse(R"( 9*90e4f058SAlexander Hansen { 10*90e4f058SAlexander Hansen "Name": "Supermicro PWS 920P SQ 0", 11*90e4f058SAlexander Hansen "Type": "PowerSupply", 12*90e4f058SAlexander Hansen "xyz.openbmc_project.Inventory.Decorator.Asset": { 13*90e4f058SAlexander Hansen "Manufacturer": "Supermicro", 14*90e4f058SAlexander Hansen "Model": "PWS 920P SQ", 15*90e4f058SAlexander Hansen "PartNumber": "328923", 16*90e4f058SAlexander Hansen "SerialNumber": "43829239" 17*90e4f058SAlexander Hansen } 18*90e4f058SAlexander Hansen } 19*90e4f058SAlexander Hansen )"); 20*90e4f058SAlexander Hansen 21*90e4f058SAlexander Hansen InvAddRemoveInfo info = queryInvInfo(record); 22*90e4f058SAlexander Hansen 23*90e4f058SAlexander Hansen EXPECT_EQ(info.name, "Supermicro PWS 920P SQ 0"); 24*90e4f058SAlexander Hansen EXPECT_EQ(info.type, "PowerSupply"); 25*90e4f058SAlexander Hansen EXPECT_EQ(info.sn, "43829239"); 26*90e4f058SAlexander Hansen EXPECT_EQ(info.model, "PWS 920P SQ"); 27*90e4f058SAlexander Hansen } 28*90e4f058SAlexander Hansen 29*90e4f058SAlexander Hansen TEST(LogDevicInventory, QueryInvInfoNoModelFound) 30*90e4f058SAlexander Hansen { 31*90e4f058SAlexander Hansen nlohmann::json record = nlohmann::json::parse(R"( 32*90e4f058SAlexander Hansen { 33*90e4f058SAlexander Hansen "Name": "Supermicro PWS 920P SQ 0", 34*90e4f058SAlexander Hansen "Type": "PowerSupply", 35*90e4f058SAlexander Hansen "xyz.openbmc_project.Inventory.Decorator.Asset": { 36*90e4f058SAlexander Hansen "Manufacturer": "Supermicro", 37*90e4f058SAlexander Hansen "PartNumber": "328923", 38*90e4f058SAlexander Hansen "SerialNumber": "43829239" 39*90e4f058SAlexander Hansen } 40*90e4f058SAlexander Hansen } 41*90e4f058SAlexander Hansen )"); 42*90e4f058SAlexander Hansen 43*90e4f058SAlexander Hansen InvAddRemoveInfo info = queryInvInfo(record); 44*90e4f058SAlexander Hansen 45*90e4f058SAlexander Hansen EXPECT_EQ(info.name, "Supermicro PWS 920P SQ 0"); 46*90e4f058SAlexander Hansen EXPECT_EQ(info.type, "PowerSupply"); 47*90e4f058SAlexander Hansen EXPECT_EQ(info.sn, "43829239"); 48*90e4f058SAlexander Hansen EXPECT_EQ(info.model, "Unknown"); 49*90e4f058SAlexander Hansen } 50