audit-go/internal/audit/api/trace_test.go
Christian Schaible (EXT) 85aae1c2e7 Merged PR 779949: feat: Refactor module structure to reflect best practices
Security-concept-update-needed: false.

JIRA Work Item: STACKITALO-259
2025-05-19 11:54:00 +00:00

43 lines
1.3 KiB
Go

package api
import (
"context"
"testing"
"github.com/stretchr/testify/assert"
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/trace"
)
func Test_AddTraceParentAndStateToContext(t *testing.T) {
expectedTraceParent := "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
expectedTraceState := "key1=value1,key2=value2"
ctx := AddTraceParentAndStateToContext(
context.Background(),
expectedTraceParent,
expectedTraceState)
span := trace.SpanFromContext(ctx)
assert.Equal(t, "00f067aa0ba902b7", span.SpanContext().SpanID().String())
assert.Equal(t, "4bf92f3577b34da6a3ce929d0e0e4736", span.SpanContext().TraceID().String())
}
func Test_TraceParentAndStateFromContext(t *testing.T) {
tracer := otel.Tracer("test")
expectedTraceParent := "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
expectedTraceState := "key1=value1,key2=value2"
ctx := AddTraceParentAndStateToContext(
context.Background(),
expectedTraceParent,
expectedTraceState)
ctx, span := tracer.Start(ctx, "test")
traceParent, traceState := TraceParentAndStateFromContext(ctx)
assert.Equal(t, expectedTraceParent, traceParent)
assert.Equal(t, expectedTraceState, traceState)
assert.Equal(t, "00f067aa0ba902b7", span.SpanContext().SpanID().String())
assert.Equal(t, "4bf92f3577b34da6a3ce929d0e0e4736", span.SpanContext().TraceID().String())
}