feat: improve inspur parsing and pci.ids integration
This commit is contained in:
38
internal/parser/vendors/pciids/pciids_external_test.go
vendored
Normal file
38
internal/parser/vendors/pciids/pciids_external_test.go
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
package pciids
|
||||
|
||||
import (
|
||||
"os"
|
||||
"path/filepath"
|
||||
"sync"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestExternalPCIIDsLookup(t *testing.T) {
|
||||
dir := t.TempDir()
|
||||
idsPath := filepath.Join(dir, "pci.ids")
|
||||
content := "" +
|
||||
"# sample\n" +
|
||||
"10de NVIDIA Corporation\n" +
|
||||
"\t233b NVIDIA H200 SXM\n" +
|
||||
"8086 Intel Corporation\n" +
|
||||
"\t1521 I350 Gigabit Network Connection\n"
|
||||
|
||||
if err := os.WriteFile(idsPath, []byte(content), 0o644); err != nil {
|
||||
t.Fatalf("write pci.ids: %v", err)
|
||||
}
|
||||
|
||||
t.Setenv("LOGPILE_PCI_IDS_PATH", idsPath)
|
||||
loadOnce = sync.Once{}
|
||||
vendors = nil
|
||||
devices = nil
|
||||
|
||||
if got := DeviceName(0x10de, 0x233b); got != "NVIDIA H200 SXM" {
|
||||
t.Fatalf("expected external device name, got %q", got)
|
||||
}
|
||||
if got := VendorName(0x10de); got != "NVIDIA Corporation" {
|
||||
t.Fatalf("expected external vendor name, got %q", got)
|
||||
}
|
||||
if got := DeviceName(0x8086, 0x1521); got != "I350 Gigabit Network Connection" {
|
||||
t.Fatalf("expected external intel device name, got %q", got)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user