@@ -27,12 +27,14 @@ def test_constructor(self):
2727 host_name = '0.0.0.0'
2828 port = 2333
2929 endpoint = '/api/v2/test'
30+ ipv4 = '127.0.0.1'
3031
3132 exporter = zipkin_exporter .ZipkinExporter (
3233 service_name = service_name ,
3334 host_name = host_name ,
3435 port = port ,
35- endpoint = endpoint )
36+ endpoint = endpoint ,
37+ ipv4 = ipv4 )
3638
3739 expected_url = 'http://0.0.0.0:2333/api/v2/test'
3840
@@ -41,6 +43,7 @@ def test_constructor(self):
4143 self .assertEqual (exporter .port , port )
4244 self .assertEqual (exporter .endpoint , endpoint )
4345 self .assertEqual (exporter .url , expected_url )
46+ self .assertEqual (exporter .ipv4 , ipv4 )
4447
4548 def test_export (self ):
4649 exporter = zipkin_exporter .ZipkinExporter (
@@ -144,23 +147,33 @@ def test_translate_to_zipkin_span_kind_none(self):
144147 }
145148
146149 trace_id = '6e0c63257de34c92bf9efcd03927272e'
147- spans = [span1 , span2 , span3 ]
150+ spans_ipv4 = [span1 , span2 ]
151+ spans_ipv6 = [span3 ]
148152
149- local_endpoint = {
153+ ipv4 = '127.0.0.1'
154+ ipv6 = '2001:0db8:85a3:0000:0000:8a2e:0370:7334'
155+
156+ local_endpoint_ipv4 = {
157+ 'serviceName' : 'my_service' ,
158+ 'ipv4' : ipv4 ,
159+ 'port' : 9411 ,
160+ }
161+
162+ local_endpoint_ipv6 = {
150163 'serviceName' : 'my_service' ,
151- 'ipv4 ' : 'localhost' ,
164+ 'ipv6 ' : ipv6 ,
152165 'port' : 9411 ,
153166 }
154167
155- expected_zipkin_spans = [
168+ expected_zipkin_spans_ipv4 = [
156169 {
157170 'traceId' : '6e0c63257de34c92bf9efcd03927272e' ,
158171 'id' : '1234567890' ,
159172 'parentId' : '1111111111' ,
160173 'name' : 'child_span' ,
161174 'timestamp' : 1502820146000000 ,
162175 'duration' : 10000000 ,
163- 'localEndpoint' : local_endpoint ,
176+ 'localEndpoint' : local_endpoint_ipv4 ,
164177 'tags' : {'test_key' : 'test_value' },
165178 },
166179 {
@@ -170,27 +183,41 @@ def test_translate_to_zipkin_span_kind_none(self):
170183 'name' : 'child_span' ,
171184 'timestamp' : 1502820146000000 ,
172185 'duration' : 10000000 ,
173- 'localEndpoint' : local_endpoint ,
186+ 'localEndpoint' : local_endpoint_ipv4 ,
174187 'tags' : {'test_key' : '1' },
175188 },
189+ ]
190+
191+ expected_zipkin_spans_ipv6 = [
176192 {
177193 'traceId' : '6e0c63257de34c92bf9efcd03927272e' ,
178194 'id' : '1234567890' ,
179195 'name' : 'child_span' ,
180196 'timestamp' : 1502820146000000 ,
181197 'duration' : 10000000 ,
182- 'localEndpoint' : local_endpoint ,
198+ 'localEndpoint' : local_endpoint_ipv6 ,
183199 'tags' : {'test_key' : 'False' },
184200 'kind' : 'SERVER' ,
185- }
201+ },
186202 ]
187203
188- exporter = zipkin_exporter .ZipkinExporter (service_name = 'my_service' )
189- zipkin_spans = exporter .translate_to_zipkin (
204+ # Test ipv4 local endpoint
205+ exporter_ipv4 = zipkin_exporter .ZipkinExporter (
206+ service_name = 'my_service' , ipv4 = ipv4 )
207+ zipkin_spans_ipv4 = exporter_ipv4 .translate_to_zipkin (
208+ trace_id = trace_id ,
209+ spans = spans_ipv4 )
210+
211+ self .assertEqual (zipkin_spans_ipv4 , expected_zipkin_spans_ipv4 )
212+
213+ # Test ipv6 local endpoint
214+ exporter_ipv6 = zipkin_exporter .ZipkinExporter (
215+ service_name = 'my_service' , ipv6 = ipv6 )
216+ zipkin_spans_ipv6 = exporter_ipv6 .translate_to_zipkin (
190217 trace_id = trace_id ,
191- spans = spans )
218+ spans = spans_ipv6 )
192219
193- self .assertEqual (zipkin_spans , expected_zipkin_spans )
220+ self .assertEqual (zipkin_spans_ipv6 , expected_zipkin_spans_ipv6 )
194221
195222
196223class MockTransport (object ):
0 commit comments