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)
		}
	}
}
