github.com/qiniu/go-sdk/v7@v7.27.0/storagev2/chooser/chooser_test.go (about) 1 //go:build unit 2 // +build unit 3 4 package chooser_test 5 6 import ( 7 "context" 8 "net" 9 "testing" 10 11 "github.com/qiniu/go-sdk/v7/storagev2/chooser" 12 ) 13 14 func TestDirectChooser(t *testing.T) { 15 cs := chooser.NewDirectChooser() 16 ips := cs.Choose(context.Background(), []net.IP{net.IPv4(1, 2, 3, 4), net.IPv4(5, 6, 7, 8)}, &chooser.ChooseOptions{ 17 Domain: "www.qiniu.com", 18 }) 19 assertIPs(t, ips, []net.IP{net.IPv4(1, 2, 3, 4), net.IPv4(5, 6, 7, 8)}) 20 } 21 22 func assertIPs(t *testing.T, ips []net.IP, expected []net.IP) { 23 if len(ips) != len(expected) { 24 t.Fatalf("unexpected ips count: actual=%v, expected=%v", ips, expected) 25 } 26 for i := range ips { 27 if !ips[i].Equal(expected[i]) { 28 t.Fatalf("unexpected ip: actual=%v, expected=%v", ips, expected) 29 } 30 } 31 }