github.com/cilium/cilium@v1.16.2/operator/pkg/model/translation/envoy_http_connection_manager_test.go (about) 1 // SPDX-License-Identifier: Apache-2.0 2 // Copyright Authors of Cilium 3 4 package translation 5 6 import ( 7 "testing" 8 9 httpConnectionManagerv3 "github.com/cilium/proxy/go/envoy/extensions/filters/network/http_connection_manager/v3" 10 "github.com/stretchr/testify/require" 11 "google.golang.org/protobuf/proto" 12 ) 13 14 func TestNewHTTPConnectionManager(t *testing.T) { 15 res, err := NewHTTPConnectionManager("dummy-name", "dummy-route-name") 16 require.Nil(t, err) 17 18 httpConnectionManager := &httpConnectionManagerv3.HttpConnectionManager{} 19 err = proto.Unmarshal(res.Value, httpConnectionManager) 20 21 require.Nil(t, err) 22 23 require.Equal(t, "dummy-name", httpConnectionManager.StatPrefix) 24 require.Equal(t, &httpConnectionManagerv3.HttpConnectionManager_Rds{ 25 Rds: &httpConnectionManagerv3.Rds{RouteConfigName: "dummy-route-name"}, 26 }, httpConnectionManager.GetRouteSpecifier()) 27 28 require.Len(t, httpConnectionManager.GetHttpFilters(), 3) 29 require.Equal(t, "envoy.filters.http.grpc_web", httpConnectionManager.GetHttpFilters()[0].Name) 30 require.Equal(t, "envoy.filters.http.grpc_stats", httpConnectionManager.GetHttpFilters()[1].Name) 31 require.Equal(t, "envoy.filters.http.router", httpConnectionManager.GetHttpFilters()[2].Name) 32 33 require.Len(t, httpConnectionManager.GetUpgradeConfigs(), 1) 34 require.Equal(t, "websocket", httpConnectionManager.GetUpgradeConfigs()[0].UpgradeType) 35 }