@@ -23,7 +23,7 @@ class McpFilterTest : public testing::Test {
2323 // Default config with PASS_THROUGH mode
2424 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
2525 proto_config.set_traffic_mode (envoy::extensions::filters::http::mcp::v3::Mcp::PASS_THROUGH);
26- config_ = std::make_shared<McpFilterConfig>(proto_config);
26+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
2727 filter_ = std::make_unique<McpFilter>(config_);
2828 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
2929 filter_->setEncoderFilterCallbacks (encoder_callbacks_);
@@ -32,7 +32,7 @@ class McpFilterTest : public testing::Test {
3232 void setupRejectMode () {
3333 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
3434 proto_config.set_traffic_mode (envoy::extensions::filters::http::mcp::v3::Mcp::REJECT_NO_MCP);
35- config_ = std::make_shared<McpFilterConfig>(proto_config);
35+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
3636 filter_ = std::make_unique<McpFilter>(config_);
3737 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
3838 filter_->setEncoderFilterCallbacks (encoder_callbacks_);
@@ -42,13 +42,14 @@ class McpFilterTest : public testing::Test {
4242 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
4343 proto_config.set_traffic_mode (envoy::extensions::filters::http::mcp::v3::Mcp::PASS_THROUGH);
4444 proto_config.set_clear_route_cache (clear_route_cache);
45- config_ = std::make_shared<McpFilterConfig>(proto_config);
45+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
4646 filter_ = std::make_unique<McpFilter>(config_);
4747 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
4848 filter_->setEncoderFilterCallbacks (encoder_callbacks_);
4949 }
5050
5151protected:
52+ NiceMock<Server::Configuration::MockFactoryContext> factory_context_;
5253 NiceMock<Http::MockStreamDecoderFilterCallbacks> decoder_callbacks_;
5354 NiceMock<Http::MockStreamEncoderFilterCallbacks> encoder_callbacks_;
5455 McpFilterConfigSharedPtr config_;
@@ -286,31 +287,31 @@ TEST_F(McpFilterTest, PostWithWrongContentType) {
286287TEST_F (McpFilterTest, DefaultMaxBodySizeIsEightKB) {
287288 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
288289 // Don't set max_request_body_size, should default to 8KB
289- auto config = std::make_shared<McpFilterConfig>(proto_config);
290+ auto config = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
290291 EXPECT_EQ (8192u , config->maxRequestBodySize ());
291292}
292293
293294// Test custom max body size configuration
294295TEST_F (McpFilterTest, CustomMaxBodySizeConfiguration) {
295296 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
296297 proto_config.mutable_max_request_body_size ()->set_value (16384 );
297- auto config = std::make_shared<McpFilterConfig>(proto_config);
298+ auto config = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
298299 EXPECT_EQ (16384u , config->maxRequestBodySize ());
299300}
300301
301302// Test disabled max body size (0 = no limit)
302303TEST_F (McpFilterTest, DisabledMaxBodySizeConfiguration) {
303304 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
304305 proto_config.mutable_max_request_body_size ()->set_value (0 );
305- auto config = std::make_shared<McpFilterConfig>(proto_config);
306+ auto config = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
306307 EXPECT_EQ (0u , config->maxRequestBodySize ());
307308}
308309
309310// Test request body under the limit succeeds
310311TEST_F (McpFilterTest, RequestBodyUnderLimitSucceeds) {
311312 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
312313 proto_config.mutable_max_request_body_size ()->set_value (1024 ); // 1KB limit
313- config_ = std::make_shared<McpFilterConfig>(proto_config);
314+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
314315 filter_ = std::make_unique<McpFilter>(config_);
315316 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
316317
@@ -339,7 +340,7 @@ TEST_F(McpFilterTest, RequestBodyUnderLimitSucceeds) {
339340TEST_F (McpFilterTest, RequestBodyExceedingLimitRejected) {
340341 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
341342 proto_config.mutable_max_request_body_size ()->set_value (100 ); // Very small limit
342- config_ = std::make_shared<McpFilterConfig>(proto_config);
343+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
343344 filter_ = std::make_unique<McpFilter>(config_);
344345 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
345346
@@ -373,7 +374,7 @@ TEST_F(McpFilterTest, RequestBodyExceedingLimitRejected) {
373374TEST_F (McpFilterTest, RequestBodyWithDisabledLimitAllowsLargeBodies) {
374375 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
375376 proto_config.mutable_max_request_body_size ()->set_value (0 ); // Disable limit
376- config_ = std::make_shared<McpFilterConfig>(proto_config);
377+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
377378 filter_ = std::make_unique<McpFilter>(config_);
378379 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
379380
@@ -406,7 +407,7 @@ TEST_F(McpFilterTest, RequestBodyWithDisabledLimitAllowsLargeBodies) {
406407TEST_F (McpFilterTest, RequestBodyExactlyAtLimitSucceeds) {
407408 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
408409 proto_config.mutable_max_request_body_size ()->set_value (100 ); // 100 byte limit
409- config_ = std::make_shared<McpFilterConfig>(proto_config);
410+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
410411 filter_ = std::make_unique<McpFilter>(config_);
411412 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
412413
@@ -446,7 +447,7 @@ TEST_F(McpFilterTest, RequestBodyExactlyAtLimitSucceeds) {
446447TEST_F (McpFilterTest, BufferLimitSetForValidMcpPostRequest) {
447448 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
448449 proto_config.mutable_max_request_body_size ()->set_value (8192 );
449- config_ = std::make_shared<McpFilterConfig>(proto_config);
450+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
450451 filter_ = std::make_unique<McpFilter>(config_);
451452 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
452453
@@ -463,7 +464,7 @@ TEST_F(McpFilterTest, BufferLimitSetForValidMcpPostRequest) {
463464TEST_F (McpFilterTest, BufferLimitNotSetWhenDisabled) {
464465 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
465466 proto_config.mutable_max_request_body_size ()->set_value (0 ); // Disabled
466- config_ = std::make_shared<McpFilterConfig>(proto_config);
467+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
467468 filter_ = std::make_unique<McpFilter>(config_);
468469 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
469470
@@ -481,7 +482,7 @@ TEST_F(McpFilterTest, BodySizeLimitInPassThroughMode) {
481482 envoy::extensions::filters::http::mcp::v3::Mcp proto_config;
482483 proto_config.set_traffic_mode (envoy::extensions::filters::http::mcp::v3::Mcp::PASS_THROUGH);
483484 proto_config.mutable_max_request_body_size ()->set_value (50 ); // Small limit
484- config_ = std::make_shared<McpFilterConfig>(proto_config);
485+ config_ = std::make_shared<McpFilterConfig>(proto_config, " test. " , factory_context_. scope () );
485486 filter_ = std::make_unique<McpFilter>(config_);
486487 filter_->setDecoderFilterCallbacks (decoder_callbacks_);
487488
0 commit comments