Path: blob/main/components/public-api-server/pkg/origin/middleware_test.go
2500 views
// Copyright (c) 2023 Gitpod GmbH. All rights reserved.1// Licensed under the GNU Affero General Public License (AGPL).2// See License.AGPL.txt in the project root for license information.34package origin56import (7"context"8"testing"910"github.com/bufbuild/connect-go"11"github.com/stretchr/testify/require"12)1314func TestInterceptor_Unary(t *testing.T) {15requestPaylaod := "request"16origin := "my-origin"1718type response struct {19origin string20}2122handler := connect.UnaryFunc(func(ctx context.Context, ar connect.AnyRequest) (connect.AnyResponse, error) {23origin := FromContext(ctx)24return connect.NewResponse(&response{origin: origin}), nil25})2627ctx := context.Background()28request := connect.NewRequest(&requestPaylaod)29request.Header().Add("Origin", origin)3031interceptor := NewInterceptor()32resp, err := interceptor.WrapUnary(handler)(ctx, request)33require.NoError(t, err)34require.Equal(t, &response{origin: origin}, resp.Any())35}363738