github.com/kiali/kiali@v1.84.0/tracing/otel/model/converter/converter_test.go (about)

     1  package converter
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/assert"
     7  
     8  	jaegerModels "github.com/kiali/kiali/tracing/jaeger/model/json"
     9  	otelModels "github.com/kiali/kiali/tracing/otel/model/json"
    10  )
    11  
    12  func TestConvertId(t *testing.T) {
    13  	assert := assert.New(t)
    14  
    15  	id := getId()
    16  	jaegerId := ConvertId(id)
    17  	assert.Equal(jaegerModels.TraceID(id), jaegerId)
    18  }
    19  
    20  func TestConvertSpanId(t *testing.T) {
    21  	assert := assert.New(t)
    22  
    23  	id := getId()
    24  	jaegerId := convertSpanId(id)
    25  	assert.Equal(jaegerModels.SpanID(id), jaegerId)
    26  }
    27  
    28  func TestConvertSpans(t *testing.T) {
    29  	assert := assert.New(t)
    30  
    31  	spans := getSpans()
    32  	id := getId()
    33  	serviceName := "kiali-traffic-generator.bookinfo"
    34  
    35  	jaegerSpans := ConvertSpans(spans, serviceName, id)
    36  	assert.Equal(jaegerModels.SpanID(id), jaegerSpans[0].SpanID)
    37  	assert.Equal(serviceName, jaegerSpans[0].Process.ServiceName)
    38  	assert.Equal("reviews.bookinfo.svc.cluster.local:9080/*", jaegerSpans[0].OperationName)
    39  }
    40  
    41  func getId() string {
    42  	id := "727a0d200236314473666c051e6f65f4"
    43  	return id
    44  }
    45  
    46  func getSpans() []otelModels.Span {
    47  	var spans []otelModels.Span
    48  
    49  	attbs := getAttributes()
    50  
    51  	span := otelModels.Span{
    52  		TraceID:           getId(),
    53  		SpanID:            getId(),
    54  		Name:              "reviews.bookinfo.svc.cluster.local:9080/*",
    55  		Kind:              "SPAN_KIND_SERVER",
    56  		StartTimeUnixNano: "1693389472310270000",
    57  		EndTimeUnixNano:   "1693389472310916000",
    58  		Attributes:        attbs,
    59  		Events:            []otelModels.Event{},
    60  		Status:            otelModels.Status{},
    61  	}
    62  
    63  	spans = append(spans, span)
    64  
    65  	return spans
    66  }
    67  
    68  func getAttributes() []otelModels.Attribute {
    69  	var attbs []otelModels.Attribute
    70  	atb1 := otelModels.Attribute{Key: "guid:x-request-id", Value: otelModels.ValueString{StringValue: "48c7189e-1e39-9984-9556-20a8f2e8be45"}}
    71  	atb2 := otelModels.Attribute{Key: "ttp.protocol\"", Value: otelModels.ValueString{StringValue: "HTTP/1.1"}}
    72  
    73  	attbs = append(attbs, atb1)
    74  	attbs = append(attbs, atb2)
    75  
    76  	return attbs
    77  }