package autotest import "testing" func TestNewBenchNoDefaultClientIDFromMAC(t *testing.T) { cfg := Config{ ID: "t", Network: 1, MasterMAC: "aa:bb:cc:dd:ee:ff", UART: UARTConfig{ Master: "/dev/ttyUSB0", }, Slaves: []SlaveNode{{ ID: "pod", MAC: "50:78:7d:18:01:10", }}, } b, err := NewBench(cfg) if err != nil { t.Fatal(err) } s, _ := b.Slave("pod") if s.ClientID != nil { t.Fatalf("client_id should be unset, got %d", *s.ClientID) } if _, err := b.ResolveClientID("pod"); err == nil { t.Fatal("ResolveClientID should fail without client_id") } } func TestNewBenchExplicitClientID(t *testing.T) { id := uint(3) cfg := Config{ ID: "t", Network: 1, MasterMAC: "aa:bb:cc:dd:ee:ff", UART: UARTConfig{ Master: "/dev/ttyUSB0", }, Slaves: []SlaveNode{{ ID: "pod", MAC: "50:78:7d:18:01:10", ClientID: &id, }}, } b, err := NewBench(cfg) if err != nil { t.Fatal(err) } got, err := b.ResolveClientID("pod") if err != nil { t.Fatal(err) } if got != 3 { t.Fatalf("client_id=%d want 3", got) } } func TestMACEqual(t *testing.T) { if !MACEqual("50:78:7D:18:01:10", "50-78-7d-18-01-10") { t.Fatal("MACEqual failed") } }