Files
Joshua MacDonaldandGitHub 593537a94c Add context.Context to HTTP middleware interface constructors (#14549)
#### Description

API change in extensionmiddleware, an unstable package to allow
middleware access to the start context.

HTTP only. gRPC is treated in #14536.

This is technically a breaking change in configmiddleware and for all
implementations of this extension. We believe no one is using this
feature outside of this repository, see memorylimiter is fixed here.

#### Link to tracking issue

Part of
https://github.com/open-telemetry/opentelemetry-collector/issues/14523

#### Documentation

N/A
2026-03-01 21:43:32 +00:00

44 lines
1.1 KiB
Go

// Copyright The OpenTelemetry Authors
// SPDX-License-Identifier: Apache-2.0
package extensionmiddlewaretest
import (
"context"
"errors"
"testing"
"github.com/stretchr/testify/require"
"go.opentelemetry.io/collector/extension/extensionmiddleware"
)
func TestErrClient(t *testing.T) {
client := NewErr(errors.New("error"))
httpClient, ok := client.(extensionmiddleware.HTTPClient)
require.True(t, ok)
_, err := httpClient.GetHTTPRoundTripper(context.Background())
require.Error(t, err)
grpcClient, ok := client.(extensionmiddleware.GRPCClient)
require.True(t, ok)
_, err = grpcClient.GetGRPCClientOptions(context.Background())
require.Error(t, err)
}
func TestErrServer(t *testing.T) {
server := NewErr(errors.New("error"))
testctx := context.Background()
httpServer, ok := server.(extensionmiddleware.HTTPServer)
require.True(t, ok)
_, err := httpServer.GetHTTPHandler(testctx)
require.Error(t, err)
grpcServer, ok := server.(extensionmiddleware.GRPCServer)
require.True(t, ok)
_, err = grpcServer.GetGRPCServerOptions(context.Background())
require.Error(t, err)
}