@@ -277,62 +277,73 @@ func TestNewRawExporterShouldFailIfCollectorUnset(t *testing.T) {
277277 assert .Error (t , err )
278278}
279279
280- type testCollectorEnpoint struct {
280+ type testCollectorEndpoint struct {
281281 batchesUploaded []* gen.Batch
282282}
283283
284- func (c * testCollectorEnpoint ) upload (batch * gen.Batch ) error {
284+ func (c * testCollectorEndpoint ) upload (batch * gen.Batch ) error {
285285 c .batchesUploaded = append (c .batchesUploaded , batch )
286286 return nil
287287}
288288
289- var _ batchUploader = (* testCollectorEnpoint )(nil )
289+ var _ batchUploader = (* testCollectorEndpoint )(nil )
290290
291291func withTestCollectorEndpoint () func () (batchUploader , error ) {
292292 return func () (batchUploader , error ) {
293- return & testCollectorEnpoint {}, nil
293+ return & testCollectorEndpoint {}, nil
294294 }
295295}
296296
297- func withTestCollectorEndpointInjected (ce * testCollectorEnpoint ) func () (batchUploader , error ) {
297+ func withTestCollectorEndpointInjected (ce * testCollectorEndpoint ) func () (batchUploader , error ) {
298298 return func () (batchUploader , error ) {
299299 return ce , nil
300300 }
301301}
302302
303303func TestExporter_ExportSpan (t * testing.T ) {
304+ envStore , err := ottest .SetEnvVariables (map [string ]string {
305+ envDisabled : "false" ,
306+ })
307+ require .NoError (t , err )
308+ defer func () {
309+ require .NoError (t , envStore .Restore ())
310+ }()
311+
304312 const (
305313 serviceName = "test-service"
306314 tagKey = "key"
307315 tagVal = "val"
308316 )
309- // Create Jaeger Exporter
310- exp , err := NewRawExporter (
311- withTestCollectorEndpoint (),
317+
318+ testCollector := & testCollectorEndpoint {}
319+ tp , spanFlush , err := NewExportPipeline (
320+ withTestCollectorEndpointInjected (testCollector ),
312321 WithSDKOptions (
313322 sdktrace .WithResource (resource .NewWithAttributes (
314323 semconv .ServiceNameKey .String (serviceName ),
315324 attribute .String (tagKey , tagVal ),
316325 )),
317326 ),
318327 )
319-
320328 assert .NoError (t , err )
321-
322- tp := sdktrace .NewTracerProvider (
323- sdktrace .WithSampler (sdktrace .AlwaysSample ()),
324- sdktrace .WithSyncer (exp ),
325- )
326329 otel .SetTracerProvider (tp )
327- _ , span := otel .Tracer ("test-tracer" ).Start (context .Background (), "test-span" )
328- span .End ()
330+ tracer := otel .Tracer ("test-tracer" )
331+ for i := 0 ; i < 3 ; i ++ {
332+ _ , span := tracer .Start (context .Background (), fmt .Sprintf ("test-span-%d" , i ))
333+ span .End ()
334+ assert .True (t , span .SpanContext ().IsValid ())
335+ }
329336
330- assert .True (t , span .SpanContext ().IsValid ())
337+ spanFlush ()
338+ batchesUploaded := testCollector .batchesUploaded
339+ require .Len (t , batchesUploaded , 1 )
340+ uploadedBatch := batchesUploaded [0 ]
341+ assert .Equal (t , serviceName , uploadedBatch .GetProcess ().GetServiceName ())
342+ assert .Len (t , uploadedBatch .GetSpans (), 3 )
331343
332- exp .Flush ()
333- tc := exp .uploader .(* testCollectorEnpoint )
334- assert .True (t , len (tc .batchesUploaded ) == 1 )
335- assert .True (t , len (tc .batchesUploaded [0 ].GetSpans ()) == 1 )
344+ require .Len (t , uploadedBatch .GetProcess ().GetTags (), 1 )
345+ assert .Equal (t , tagKey , uploadedBatch .GetProcess ().GetTags ()[0 ].GetKey ())
346+ assert .Equal (t , tagVal , uploadedBatch .GetProcess ().GetTags ()[0 ].GetVStr ())
336347}
337348
338349func Test_spanSnapshotToThrift (t * testing.T ) {
@@ -943,14 +954,17 @@ func TestNewExporterPipelineWithOptions(t *testing.T) {
943954 const (
944955 serviceName = "test-service"
945956 eventCountLimit = 10
957+ tagKey = "key"
958+ tagVal = "val"
946959 )
947960
948- testCollector := & testCollectorEnpoint {}
961+ testCollector := & testCollectorEndpoint {}
949962 tp , spanFlush , err := NewExportPipeline (
950963 withTestCollectorEndpointInjected (testCollector ),
951964 WithSDKOptions (
952965 sdktrace .WithResource (resource .NewWithAttributes (
953966 semconv .ServiceNameKey .String (serviceName ),
967+ attribute .String (tagKey , tagVal ),
954968 )),
955969 sdktrace .WithSpanLimits (sdktrace.SpanLimits {
956970 EventCountLimit : eventCountLimit ,
@@ -970,10 +984,14 @@ func TestNewExporterPipelineWithOptions(t *testing.T) {
970984 assert .True (t , span .SpanContext ().IsValid ())
971985
972986 batchesUploaded := testCollector .batchesUploaded
973- assert . True (t , len ( batchesUploaded ) == 1 )
987+ require . Len (t , batchesUploaded , 1 )
974988 uploadedBatch := batchesUploaded [0 ]
975989 assert .Equal (t , serviceName , uploadedBatch .GetProcess ().GetServiceName ())
976- assert . True (t , len ( uploadedBatch .GetSpans ()) == 1 )
990+ require . Len (t , uploadedBatch .GetSpans (), 1 )
977991 uploadedSpan := uploadedBatch .GetSpans ()[0 ]
978- assert .Equal (t , eventCountLimit , len (uploadedSpan .GetLogs ()))
992+ assert .Len (t , uploadedSpan .GetLogs (), eventCountLimit )
993+
994+ require .Len (t , uploadedBatch .GetProcess ().GetTags (), 1 )
995+ assert .Equal (t , tagKey , uploadedBatch .GetProcess ().GetTags ()[0 ].GetKey ())
996+ assert .Equal (t , tagVal , uploadedBatch .GetProcess ().GetTags ()[0 ].GetVStr ())
979997}
0 commit comments