package mihomoapi import "testing" func TestResolveLeafOutbound(t *testing.T) { groups := map[string]bool{ "PROXY": true, "country_HK": true, "自动选择": true, } cases := []struct { chains []string want string }{ {[]string{"PROXY", "sub1_hk_node"}, "sub1_hk_node"}, {[]string{"country_HK", "sub1_us_node"}, "sub1_us_node"}, {[]string{"PROXY", "自动选择", "sub1_jp_node"}, "sub1_jp_node"}, {[]string{"DIRECT"}, "DIRECT"}, {[]string{"country_HK"}, "country_HK"}, } for _, tc := range cases { got := ResolveLeafOutbound(tc.chains, groups) if got != tc.want { t.Fatalf("chains=%v want %q got %q", tc.chains, tc.want, got) } } }