package dynamicrouting import ( "os" "path/filepath" "testing" ) func TestOSPFStatusIsPerInstance(t *testing.T) { dir := t.TempDir() text := "#!/bin/sh\nprintf 'ospf_a OSPF master4 up 00:00\\nospf_b OSPF master4 down 00:00\\n'\n" if err := os.WriteFile(filepath.Join(dir, "birdc"), []byte(text), 0755); err != nil { t.Fatal(err) } t.Setenv("PATH", dir+":"+os.Getenv("PATH")) m := &Manager{} m.config.OSPFInstances = []OSPFInstance{{Name: "a"}, {Name: "b"}, {Name: "c"}} got := m.ListOSPFInstances() if !got[0].Running || got[1].Running || got[2].Running { t.Fatal("one OSPF instance marked other instances running", got) } }