You've already forked opentelemetry-go
mirror of
https://github.com/open-telemetry/opentelemetry-go.git
synced 2026-06-03 18:35:08 +02:00
cf2a4a180f
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [mvdan.cc/gofumpt](https://redirect.github.com/mvdan/gofumpt) | `v0.9.2` → `v0.10.0` |  |  | --- ### Release Notes <details> <summary>mvdan/gofumpt (mvdan.cc/gofumpt)</summary> ### [`v0.10.0`](https://redirect.github.com/mvdan/gofumpt/blob/HEAD/CHANGELOG.md#v0100---2026-05-04) [Compare Source](https://redirect.github.com/mvdan/gofumpt/compare/v0.9.2...v0.10.0) This release is based on Go 1.26's gofmt, and requires Go 1.25 or later. A new rule is introduced to drop unnecessary parentheses around expressions where the inner expression is unambiguous on its own, such as `f((3))`. Parentheses are kept where they are useful, such as on binary expressions. See [#​44](https://redirect.github.com/mvdan/gofumpt/issues/44). A new rule is introduced to require multi-line function calls to match the opening and closing parenthesis in terms of the use of newlines. See [#​74](https://redirect.github.com/mvdan/gofumpt/issues/74). The `-extra` flag now accepts a comma-separated list of rule names to enable individual extra rules, rather than enabling all of them at once. See [#​339](https://redirect.github.com/mvdan/gofumpt/issues/339). The following changes are included as well: - Avoid crashing on `go.mod` files without a `module` directive - [#​350](https://redirect.github.com/mvdan/gofumpt/issues/350) - Avoid failing when an ignored directory cannot be read - [#​351](https://redirect.github.com/mvdan/gofumpt/issues/351) - Avoid prefixing more kinds of commented-out Go code with spaces - [#​230](https://redirect.github.com/mvdan/gofumpt/issues/230) - Avoid prefixing a shebang comment with a space - [#​237](https://redirect.github.com/mvdan/gofumpt/issues/237) - Narrow the newlines on assignments rule to ignore complex cases - [#​354](https://redirect.github.com/mvdan/gofumpt/issues/354) - Fix three bugs which caused a second gofumpt run to make changes - [#​132](https://redirect.github.com/mvdan/gofumpt/issues/132), [#​345](https://redirect.github.com/mvdan/gofumpt/issues/345) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-go). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNTkuMiIsInVwZGF0ZWRJblZlciI6IjQzLjE1OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJTa2lwIENoYW5nZWxvZyIsImRlcGVuZGVuY2llcyJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Tyler Yahn <codingalias@gmail.com>
90 lines
2.5 KiB
Go
90 lines
2.5 KiB
Go
// Copyright The OpenTelemetry Authors
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
package opentracing
|
|
|
|
import (
|
|
"context"
|
|
"net"
|
|
"testing"
|
|
"time"
|
|
|
|
otgrpc "github.com/opentracing-contrib/go-grpc"
|
|
testpb "github.com/opentracing-contrib/go-grpc/test/otgrpc_testing"
|
|
ot "github.com/opentracing/opentracing-go"
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
"google.golang.org/grpc"
|
|
"google.golang.org/grpc/credentials/insecure"
|
|
|
|
"go.opentelemetry.io/otel/propagation"
|
|
)
|
|
|
|
type testGRPCServer struct{}
|
|
|
|
func (*testGRPCServer) UnaryCall(_ context.Context, r *testpb.SimpleRequest) (*testpb.SimpleResponse, error) {
|
|
return &testpb.SimpleResponse{Payload: r.Payload * 2}, nil
|
|
}
|
|
|
|
func (*testGRPCServer) StreamingOutputCall(*testpb.SimpleRequest, testpb.TestService_StreamingOutputCallServer) error {
|
|
return nil
|
|
}
|
|
|
|
func (*testGRPCServer) StreamingInputCall(testpb.TestService_StreamingInputCallServer) error {
|
|
return nil
|
|
}
|
|
|
|
func (*testGRPCServer) StreamingBidirectionalCall(testpb.TestService_StreamingBidirectionalCallServer) error {
|
|
return nil
|
|
}
|
|
|
|
func startTestGRPCServer(t *testing.T, tracer ot.Tracer) (*grpc.Server, net.Addr) {
|
|
lis, _ := (&net.ListenConfig{}).Listen(t.Context(), "tcp", ":0")
|
|
server := grpc.NewServer(
|
|
grpc.UnaryInterceptor(otgrpc.OpenTracingServerInterceptor(tracer)),
|
|
)
|
|
testpb.RegisterTestServiceServer(server, &testGRPCServer{})
|
|
|
|
go func() {
|
|
err := server.Serve(lis)
|
|
require.NoError(t, err)
|
|
}()
|
|
|
|
return server, lis.Addr()
|
|
}
|
|
|
|
func TestBridgeTracer_ExtractAndInject_gRPC(t *testing.T) {
|
|
tracer := newMockTracer()
|
|
bridge := NewBridgeTracer()
|
|
bridge.SetOpenTelemetryTracer(tracer)
|
|
bridge.SetTextMapPropagator(propagation.TraceContext{})
|
|
|
|
srv, addr := startTestGRPCServer(t, bridge)
|
|
defer srv.Stop()
|
|
|
|
conn, err := grpc.NewClient(
|
|
addr.String(),
|
|
grpc.WithTransportCredentials(insecure.NewCredentials()),
|
|
grpc.WithUnaryInterceptor(otgrpc.OpenTracingClientInterceptor(bridge)),
|
|
)
|
|
require.NoError(t, err)
|
|
cli := testpb.NewTestServiceClient(conn)
|
|
|
|
ctx, cx := context.WithTimeout(t.Context(), 10*time.Second)
|
|
defer cx()
|
|
res, err := cli.UnaryCall(ctx, &testpb.SimpleRequest{Payload: 42})
|
|
require.NoError(t, err)
|
|
assert.EqualValues(t, 84, res.Payload)
|
|
|
|
checkSpans := func() bool {
|
|
return len(tracer.FinishedSpans) == 2
|
|
}
|
|
require.Eventuallyf(t, checkSpans, 5*time.Second, 5*time.Millisecond, "expecting two spans")
|
|
assert.Equal(
|
|
t,
|
|
tracer.FinishedSpans[0].SpanContext().TraceID(),
|
|
tracer.FinishedSpans[1].SpanContext().TraceID(),
|
|
"expecting same trace ID",
|
|
)
|
|
}
|