@@ -12,6 +12,7 @@ func setupBootstrapServersMappingTest() {
1212 c = new (config.Config )
1313 initFlags ()
1414 os .Setenv ("BOOTSTRAP_SERVER_MAPPING" , "" )
15+ os .Setenv ("EXTERNAL_SERVER_MAPPING" , "" )
1516}
1617
1718func TestBootstrapServersMappingFromFlags (t * testing.T ) {
@@ -74,3 +75,53 @@ func TestEmptyBootstrapServersMapping(t *testing.T) {
7475 a := assert .New (t )
7576 a .Error (err , "list of bootstrap-server-mapping must not be empty" )
7677}
78+
79+ func TestBootstrapServersMappingFromEnvWithWhiteSpaces (t * testing.T ) {
80+ setupBootstrapServersMappingTest ()
81+
82+ os .Setenv ("BOOTSTRAP_SERVER_MAPPING" , " 192.168.99.100:32404,0.0.0.0:32404 kafka-5.example.com:9092,0.0.0.0:32405,kafka-5.grepplabs.com:9092 " )
83+
84+ var args []string
85+ Server .ParseFlags (args )
86+ err := Server .PreRunE (nil , args )
87+ a := assert .New (t )
88+ a .Nil (err )
89+ a .Len (c .Proxy .BootstrapServers , 2 )
90+
91+ a .Equal (c .Proxy .BootstrapServers [0 ].BrokerAddress , "192.168.99.100:32404" )
92+ a .Equal (c .Proxy .BootstrapServers [0 ].ListenerAddress , "0.0.0.0:32404" )
93+ a .Equal (c .Proxy .BootstrapServers [0 ].AdvertisedAddress , "0.0.0.0:32404" )
94+
95+ a .Equal (c .Proxy .BootstrapServers [1 ].BrokerAddress , "kafka-5.example.com:9092" )
96+ a .Equal (c .Proxy .BootstrapServers [1 ].ListenerAddress , "0.0.0.0:32405" )
97+ a .Equal (c .Proxy .BootstrapServers [1 ].AdvertisedAddress , "kafka-5.grepplabs.com:9092" )
98+
99+ }
100+
101+ func TestExternalServersMappingFromEnv (t * testing.T ) {
102+ setupBootstrapServersMappingTest ()
103+
104+ os .Setenv ("BOOTSTRAP_SERVER_MAPPING" , " 192.168.99.100:32401,0.0.0.0:32401" )
105+ os .Setenv ("EXTERNAL_SERVER_MAPPING" , " 192.168.99.100:32404,0.0.0.0:32404 kafka-5.example.com:9092,0.0.0.0:32405,kafka-5.grepplabs.com:9092" )
106+
107+ var args []string
108+ Server .ParseFlags (args )
109+ err := Server .PreRunE (nil , args )
110+ a := assert .New (t )
111+ a .Nil (err )
112+ a .Len (c .Proxy .BootstrapServers , 1 )
113+ a .Len (c .Proxy .ExternalServers , 2 )
114+
115+ a .Equal (c .Proxy .BootstrapServers [0 ].BrokerAddress , "192.168.99.100:32401" )
116+ a .Equal (c .Proxy .BootstrapServers [0 ].ListenerAddress , "0.0.0.0:32401" )
117+ a .Equal (c .Proxy .BootstrapServers [0 ].AdvertisedAddress , "0.0.0.0:32401" )
118+
119+ a .Equal (c .Proxy .ExternalServers [0 ].BrokerAddress , "192.168.99.100:32404" )
120+ a .Equal (c .Proxy .ExternalServers [0 ].ListenerAddress , "0.0.0.0:32404" )
121+ a .Equal (c .Proxy .ExternalServers [0 ].AdvertisedAddress , "0.0.0.0:32404" )
122+
123+ a .Equal (c .Proxy .ExternalServers [1 ].BrokerAddress , "kafka-5.example.com:9092" )
124+ a .Equal (c .Proxy .ExternalServers [1 ].ListenerAddress , "0.0.0.0:32405" )
125+ a .Equal (c .Proxy .ExternalServers [1 ].AdvertisedAddress , "kafka-5.grepplabs.com:9092" )
126+
127+ }
0 commit comments