Update Inspur parsing and align release docs
This commit is contained in:
69
internal/parser/vendors/inspur/hgx_firmware_test.go
vendored
Normal file
69
internal/parser/vendors/inspur/hgx_firmware_test.go
vendored
Normal file
@@ -0,0 +1,69 @@
|
||||
package inspur
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"git.mchus.pro/mchus/logpile/internal/models"
|
||||
)
|
||||
|
||||
func TestAppendHGXFirmwareFromHWInfo_AppendsInventoryEntries(t *testing.T) {
|
||||
hw := &models.HardwareConfig{
|
||||
Firmware: []models.FirmwareInfo{
|
||||
{DeviceName: "BIOS", Version: "1.0.0"},
|
||||
},
|
||||
}
|
||||
|
||||
content := []byte(`
|
||||
{
|
||||
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/HGX_FW_BMC_0",
|
||||
"Id": "HGX_FW_BMC_0",
|
||||
"Oem": {
|
||||
"Nvidia": {
|
||||
"ActiveFirmwareSlot": {"Version": "25.05-A"},
|
||||
"InactiveFirmwareSlot": {"Version": "25.04-B"}
|
||||
}
|
||||
},
|
||||
"Version": "25.05-A",
|
||||
"WriteProtected": false
|
||||
}
|
||||
{
|
||||
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/HGX_FW_GPU_SXM_1",
|
||||
"Id": "HGX_FW_GPU_SXM_1",
|
||||
"Version": "97.00.C5.00.0E",
|
||||
"WriteProtected": false
|
||||
}
|
||||
{
|
||||
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/HGX_Driver_GPU_SXM_1",
|
||||
"Id": "HGX_Driver_GPU_SXM_1",
|
||||
"Version": "",
|
||||
"WriteProtected": false
|
||||
}
|
||||
`)
|
||||
|
||||
appendHGXFirmwareFromHWInfo(content, hw)
|
||||
|
||||
if len(hw.Firmware) != 5 {
|
||||
t.Fatalf("expected 5 firmware entries after append, got %d", len(hw.Firmware))
|
||||
}
|
||||
|
||||
seen := make(map[string]string)
|
||||
for _, fw := range hw.Firmware {
|
||||
seen[fw.DeviceName] = fw.Version
|
||||
}
|
||||
|
||||
if seen["HGX_FW_BMC_0"] != "25.05-A" {
|
||||
t.Fatalf("expected HGX_FW_BMC_0 version 25.05-A, got %q", seen["HGX_FW_BMC_0"])
|
||||
}
|
||||
if seen["HGX_FW_BMC_0 Active Slot"] != "25.05-A" {
|
||||
t.Fatalf("expected active slot version, got %q", seen["HGX_FW_BMC_0 Active Slot"])
|
||||
}
|
||||
if seen["HGX_FW_BMC_0 Inactive Slot"] != "25.04-B" {
|
||||
t.Fatalf("expected inactive slot version, got %q", seen["HGX_FW_BMC_0 Inactive Slot"])
|
||||
}
|
||||
if seen["HGX_FW_GPU_SXM_1"] != "97.00.C5.00.0E" {
|
||||
t.Fatalf("expected GPU FW entry, got %q", seen["HGX_FW_GPU_SXM_1"])
|
||||
}
|
||||
if _, ok := seen["HGX_Driver_GPU_SXM_1"]; ok {
|
||||
t.Fatalf("did not expect empty version driver entry")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user