41 lines
1.0 KiB
Go
41 lines
1.0 KiB
Go
package collector
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
func TestParseNIC_ResolvesModelFromPCIIDs(t *testing.T) {
|
|
doc := map[string]interface{}{
|
|
"Id": "NIC1",
|
|
"VendorId": "0x8086",
|
|
"DeviceId": "0x1521",
|
|
"Model": "0x1521",
|
|
}
|
|
|
|
nic := parseNIC(doc)
|
|
if nic.Model == "" {
|
|
t.Fatalf("expected model resolved from pci.ids")
|
|
}
|
|
if !strings.Contains(strings.ToUpper(nic.Model), "I350") {
|
|
t.Fatalf("expected I350 in model, got %q", nic.Model)
|
|
}
|
|
}
|
|
|
|
func TestParsePCIeFunction_ResolvesDeviceClassFromPCIIDs(t *testing.T) {
|
|
doc := map[string]interface{}{
|
|
"Id": "PCIE1",
|
|
"VendorId": "0x9005",
|
|
"DeviceId": "0x028f",
|
|
"ClassCode": "0x010700",
|
|
}
|
|
|
|
dev := parsePCIeFunction(doc, 0)
|
|
if dev.DeviceClass == "" || strings.EqualFold(dev.DeviceClass, "PCIe device") {
|
|
t.Fatalf("expected device class resolved from pci.ids, got %q", dev.DeviceClass)
|
|
}
|
|
if strings.HasPrefix(strings.ToLower(strings.TrimSpace(dev.DeviceClass)), "0x") {
|
|
t.Fatalf("expected resolved name instead of raw hex, got %q", dev.DeviceClass)
|
|
}
|
|
}
|