MCPcopy
hub / github.com/grpc/grpc-go / TestXDSClient_New

Method TestXDSClient_New

internal/xds/clients/xdsclient/xdsclient_test.go:31–111  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

29)
30
31func (s) TestXDSClient_New(t *testing.T) {
32 configs := map[string]grpctransport.Config{"insecure": {Credentials: insecure.NewBundle()}}
33
34 tests := []struct {
35 name string
36 config Config
37 wantErr string
38 }{
39 {
40 name: "nil resource types",
41 config: Config{
42 Node: clients.Node{ID: "node-id"},
43 },
44 wantErr: "resource types map is nil",
45 },
46 {
47 name: "nil transport builder",
48 config: Config{
49 Node: clients.Node{ID: "node-id"},
50 ResourceTypes: map[string]ResourceType{xdsresource.V3ListenerURL: listenerType},
51 },
52 wantErr: "transport builder is nil",
53 },
54 {
55 name: "no servers or authorities",
56 config: Config{
57 Node: clients.Node{ID: "node-id"},
58 ResourceTypes: map[string]ResourceType{xdsresource.V3ListenerURL: listenerType},
59 TransportBuilder: grpctransport.NewBuilder(configs),
60 },
61 wantErr: "no servers or authorities specified",
62 },
63 {
64 name: "success with servers",
65 config: Config{
66 Node: clients.Node{ID: "node-id"},
67 ResourceTypes: map[string]ResourceType{xdsresource.V3ListenerURL: listenerType},
68 TransportBuilder: grpctransport.NewBuilder(configs),
69 Servers: []ServerConfig{{ServerIdentifier: clients.ServerIdentifier{ServerURI: "dummy-server"}}},
70 },
71 wantErr: "",
72 },
73 {
74 name: "success with servers and empty nodeID",
75 config: Config{
76 Node: clients.Node{ID: ""},
77 ResourceTypes: map[string]ResourceType{xdsresource.V3ListenerURL: listenerType},
78 TransportBuilder: grpctransport.NewBuilder(configs),
79 Servers: []ServerConfig{{ServerIdentifier: clients.ServerIdentifier{ServerURI: "dummy-server"}}},
80 },
81 wantErr: "",
82 },
83 {
84 name: "success with authorities",
85 config: Config{
86 Node: clients.Node{ID: "node-id"},
87 ResourceTypes: map[string]ResourceType{xdsresource.V3ListenerURL: listenerType},
88 TransportBuilder: grpctransport.NewBuilder(configs),

Callers

nothing calls this directly

Calls 6

NewBundleFunction · 0.92
NewBuilderFunction · 0.92
NewFunction · 0.70
FatalfMethod · 0.65
ErrorMethod · 0.65
CloseMethod · 0.65

Tested by

no test coverage detected