99
1010 "github.com/stretchr/testify/assert"
1111 "github.com/stretchr/testify/require"
12- "go.opentelemetry.io/otel/attribute"
1312 "go.opentelemetry.io/otel/trace"
1413
1514 "go.opentelemetry.io/collector/exporter/exporterhelper/internal/sizer"
@@ -338,28 +337,18 @@ func BenchmarkSplittingBasedOnItemCountHugeTraces(b *testing.B) {
338337 }
339338}
340339
341- func TestMergeSplitTracesWithLinks (t * testing.T ) {
342- // Create test links
343- link1 := trace.Link {
344- SpanContext : trace .NewSpanContext (trace.SpanContextConfig {
345- TraceID : [16 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 },
346- SpanID : [8 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
347- TraceFlags : trace .FlagsSampled ,
348- }),
349- Attributes : []attribute.KeyValue {
350- attribute .String ("key1" , "value1" ),
351- },
352- }
353- link2 := trace.Link {
354- SpanContext : trace .NewSpanContext (trace.SpanContextConfig {
355- TraceID : [16 ]byte {16 , 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 },
356- SpanID : [8 ]byte {8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 },
357- TraceFlags : trace .FlagsSampled ,
358- }),
359- Attributes : []attribute.KeyValue {
360- attribute .String ("key2" , "value2" ),
361- },
362- }
340+ func TestMergeSplitTracesWithSpanContexts (t * testing.T ) {
341+ // Create test spancontexts
342+ sc1 := trace .NewSpanContext (trace.SpanContextConfig {
343+ TraceID : [16 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 },
344+ SpanID : [8 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
345+ TraceFlags : trace .FlagsSampled ,
346+ })
347+ sc2 := trace .NewSpanContext (trace.SpanContextConfig {
348+ TraceID : [16 ]byte {16 , 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 },
349+ SpanID : [8 ]byte {8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 },
350+ TraceFlags : trace .FlagsSampled ,
351+ })
363352
364353 tests := []struct {
365354 name string
@@ -370,38 +359,38 @@ func TestMergeSplitTracesWithLinks(t *testing.T) {
370359 expected []Request
371360 }{
372361 {
373- name : "merge_with_links " ,
362+ name : "merge_with_span_contexts " ,
374363 szt : RequestSizerTypeItems ,
375364 maxSize : 10 ,
376- tr1 : newTracesRequest (testdata .GenerateTraces (2 ), []trace.Link { link1 }),
377- tr2 : newTracesRequest (testdata .GenerateTraces (3 ), []trace.Link { link2 }),
365+ tr1 : newTracesRequest (testdata .GenerateTraces (2 ), []trace.SpanContext { sc1 }),
366+ tr2 : newTracesRequest (testdata .GenerateTraces (3 ), []trace.SpanContext { sc2 }),
378367 expected : []Request {newTracesRequest (func () ptrace.Traces {
379368 td := testdata .GenerateTraces (2 )
380369 testdata .GenerateTraces (3 ).ResourceSpans ().MoveAndAppendTo (td .ResourceSpans ())
381370 return td
382- }(), []trace.Link { link1 , link2 })},
371+ }(), []trace.SpanContext { sc1 , sc2 })},
383372 },
384373 {
385- name : "split_with_links " ,
374+ name : "split_with_span_contexts " ,
386375 szt : RequestSizerTypeItems ,
387376 maxSize : 2 ,
388- tr1 : newTracesRequest (testdata .GenerateTraces (5 ), []trace.Link { link1 , link2 }),
377+ tr1 : newTracesRequest (testdata .GenerateTraces (5 ), []trace.SpanContext { sc1 , sc2 }),
389378 tr2 : nil ,
390379 expected : []Request {
391- newTracesRequest (testdata .GenerateTraces (2 ), []trace.Link { link1 , link2 }),
392- newTracesRequest (testdata .GenerateTraces (2 ), []trace.Link { link1 , link2 }),
393- newTracesRequest (testdata .GenerateTraces (1 ), []trace.Link { link1 , link2 }),
380+ newTracesRequest (testdata .GenerateTraces (2 ), []trace.SpanContext { sc1 , sc2 }),
381+ newTracesRequest (testdata .GenerateTraces (2 ), []trace.SpanContext { sc1 , sc2 }),
382+ newTracesRequest (testdata .GenerateTraces (1 ), []trace.SpanContext { sc1 , sc2 }),
394383 },
395384 },
396385 {
397- name : "merge_and_split_with_links " ,
386+ name : "merge_and_split_with_span_contexts " ,
398387 szt : RequestSizerTypeItems ,
399388 maxSize : 3 ,
400- tr1 : newTracesRequest (testdata .GenerateTraces (2 ), []trace.Link { link1 }),
401- tr2 : newTracesRequest (testdata .GenerateTraces (4 ), []trace.Link { link2 }),
389+ tr1 : newTracesRequest (testdata .GenerateTraces (2 ), []trace.SpanContext { sc1 }),
390+ tr2 : newTracesRequest (testdata .GenerateTraces (4 ), []trace.SpanContext { sc2 }),
402391 expected : []Request {
403- newTracesRequest (testdata .GenerateTraces (3 ), []trace.Link { link1 , link2 }),
404- newTracesRequest (testdata .GenerateTraces (3 ), []trace.Link { link1 , link2 }),
392+ newTracesRequest (testdata .GenerateTraces (3 ), []trace.SpanContext { sc1 , sc2 }),
393+ newTracesRequest (testdata .GenerateTraces (3 ), []trace.SpanContext { sc1 , sc2 }),
405394 },
406395 },
407396 }
@@ -414,27 +403,25 @@ func TestMergeSplitTracesWithLinks(t *testing.T) {
414403 for i := range res {
415404 tracesReq := res [i ].(* tracesRequest )
416405 expectedReq := tt .expected [i ].(* tracesRequest )
417- assert .Len (t , tracesReq .links , len (expectedReq .links ))
418- assert .Equal (t , expectedReq .links , tracesReq .links )
406+ assert .Len (t , tracesReq .spancontexts , len (expectedReq .spancontexts ))
407+ assert .Equal (t , expectedReq .spancontexts , tracesReq .spancontexts )
419408 }
420409 })
421410 }
422411}
423412
424- func TestTracesRequestLinksMarshaling (t * testing.T ) {
413+ func TestTracesRequestSpanContextsMarshaling (t * testing.T ) {
425414 traceState , err := trace.TraceState {}.Insert ("key1" , "value1" )
426415 require .NoError (t , err )
427416
428- link := trace.Link {
429- SpanContext : trace .NewSpanContext (trace.SpanContextConfig {
430- TraceID : [16 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 },
431- SpanID : [8 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
432- TraceFlags : trace .FlagsSampled ,
433- TraceState : traceState ,
434- }),
435- }
417+ sc := trace .NewSpanContext (trace.SpanContextConfig {
418+ TraceID : [16 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 },
419+ SpanID : [8 ]byte {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
420+ TraceFlags : trace .FlagsSampled ,
421+ TraceState : traceState ,
422+ })
436423
437- originalReq := newTracesRequest (testdata .GenerateTraces (2 ), []trace.Link { link })
424+ originalReq := newTracesRequest (testdata .GenerateTraces (2 ), []trace.SpanContext { sc })
438425
439426 // Marshal the request
440427 encoding := tracesEncoding {}
@@ -447,14 +434,14 @@ func TestTracesRequestLinksMarshaling(t *testing.T) {
447434
448435 // Verify the unmarshaled request
449436 tracesReq := newReq .(* tracesRequest )
450- require .Len (t , tracesReq .links , 1 )
437+ require .Len (t , tracesReq .spancontexts , 1 )
451438
452- // Verify link properties
453- unmarshaledLink := tracesReq .links [0 ]
454- assert .Equal (t , link . SpanContext . TraceID (), unmarshaledLink . SpanContext .TraceID ())
455- assert .Equal (t , link . SpanContext . SpanID (), unmarshaledLink . SpanContext .SpanID ())
456- assert .Equal (t , link . SpanContext . TraceFlags (), unmarshaledLink . SpanContext .TraceFlags ())
457- assert .Equal (t , link . SpanContext . TraceState (), unmarshaledLink . SpanContext .TraceState ())
439+ // Verify spancontext properties
440+ unmarshaledSpanContext := tracesReq .spancontexts [0 ]
441+ assert .Equal (t , sc . TraceID (), unmarshaledSpanContext .TraceID ())
442+ assert .Equal (t , sc . SpanID (), unmarshaledSpanContext .SpanID ())
443+ assert .Equal (t , sc . TraceFlags (), unmarshaledSpanContext .TraceFlags ())
444+ assert .Equal (t , sc . TraceState (), unmarshaledSpanContext .TraceState ())
458445
459446 // Verify trace data
460447 assert .Equal (t , originalReq .(* tracesRequest ).td , tracesReq .td )
0 commit comments