@@ -1012,3 +1012,75 @@ func TestBridgeSpan_BaggageItem(t *testing.T) {
10121012 return true
10131013 })
10141014}
1015+
1016+ func TestBridgeSpan_LogEventMethods (t * testing.T ) {
1017+ tracer := newMockTracer ()
1018+ b , _ := NewTracerPair (tracer )
1019+ span := b .StartSpan ("test" ).(* bridgeSpan )
1020+
1021+ t .Run ("LogEvent" , func (t * testing.T ) {
1022+ span .LogEvent ("event1" )
1023+ mockSpan := span .otelSpan .(* mockSpan )
1024+ if len (mockSpan .Events ) == 0 {
1025+ t .Fatalf ("expected at least one event, got none" )
1026+ }
1027+ found := false
1028+ for _ , e := range mockSpan .Events {
1029+ for _ , attr := range e .Attributes {
1030+ if attr .Key == "event" && attr .Value .AsString () == "event1" {
1031+ found = true
1032+ }
1033+ }
1034+ }
1035+ if ! found {
1036+ t .Errorf ("LogEvent did not log expected event attribute" )
1037+ }
1038+ })
1039+
1040+ t .Run ("LogEventWithPayload" , func (t * testing.T ) {
1041+ span2 := b .StartSpan ("test2" ).(* bridgeSpan )
1042+ span2 .LogEventWithPayload ("event2" , "payload2" )
1043+ mockSpan := span2 .otelSpan .(* mockSpan )
1044+ foundEvent , foundPayload := false , false
1045+ for _ , e := range mockSpan .Events {
1046+ for _ , attr := range e .Attributes {
1047+ if attr .Key == "event" && attr .Value .AsString () == "event2" {
1048+ foundEvent = true
1049+ }
1050+ if attr .Key == "payload" && attr .Value .AsString () == "payload2" {
1051+ foundPayload = true
1052+ }
1053+ }
1054+ }
1055+ if ! foundEvent {
1056+ t .Errorf ("LogEventWithPayload did not log expected event attribute" )
1057+ }
1058+ if ! foundPayload {
1059+ t .Errorf ("LogEventWithPayload did not log expected payload attribute" )
1060+ }
1061+ })
1062+
1063+ t .Run ("Log" , func (t * testing.T ) {
1064+ span3 := b .StartSpan ("test3" ).(* bridgeSpan )
1065+ logData := ot.LogData {Event : "event3" , Payload : "payload3" }
1066+ span3 .Log (logData )
1067+ mockSpan := span3 .otelSpan .(* mockSpan )
1068+ foundEvent , foundPayload := false , false
1069+ for _ , e := range mockSpan .Events {
1070+ for _ , attr := range e .Attributes {
1071+ if attr .Key == "event" && attr .Value .AsString () == "event3" {
1072+ foundEvent = true
1073+ }
1074+ if attr .Key == "payload" && attr .Value .AsString () == "payload3" {
1075+ foundPayload = true
1076+ }
1077+ }
1078+ }
1079+ if ! foundEvent {
1080+ t .Errorf ("Log did not log expected event attribute" )
1081+ }
1082+ if ! foundPayload {
1083+ t .Errorf ("Log did not log expected payload attribute" )
1084+ }
1085+ })
1086+ }
0 commit comments