package inspur import "testing" func TestParseAssetJSONUsesPPINAsSourceBackedCPUSerial(t *testing.T) { content := []byte(`{ "CpuInfo": [ {"ProcessorName":"Intel Xeon", "PPIN":"D46E5D6B1D3E40E1"}, {"ProcessorName":"Intel Xeon", "PPIN":"D44F8D6B9155EE0E"} ] }`) hw, err := ParseAssetJSON(content, nil, nil) if err != nil { t.Fatalf("parse asset: %v", err) } if len(hw.CPUs) != 2 { t.Fatalf("expected 2 CPUs, got %d", len(hw.CPUs)) } if hw.CPUs[0].SerialNumber != "D46E5D6B1D3E40E1" || hw.CPUs[1].SerialNumber != "D44F8D6B9155EE0E" { t.Fatalf("unexpected CPU serial mapping: %+v", hw.CPUs) } }