TEST_F(ConnectionManagerUtilityTest, UnescapeSlashesAndChromiumNormalization) {
  ON_CALL(config_, shouldNormalizePath()).WillByDefault(Return(true));
  ON_CALL(config_, pathWithEscapedSlashesAction())
      .WillByDefault(Return(envoy::extensions::filters::network::http_connection_manager::v3::
                                HttpConnectionManager::UNESCAPE_AND_FORWARD));
  TestRequestHeaderMapImpl original_headers;
  original_headers.setPath("/xyz%2f../%5Cabc");

  TestRequestHeaderMapImpl header_map(original_headers);
  EXPECT_EQ(ConnectionManagerUtility::NormalizePathAction::Continue,
            ConnectionManagerUtility::maybeNormalizePath(header_map, config_));
  // Chromium URL path normalization converts \ to /
  EXPECT_EQ(header_map.getPathValue(), "//abc");
}
TEST_F(ConnectionManagerUtilityTest, UnescapeSlashesAndChromiumNormalization) {
  ON_CALL(config_, shouldNormalizePath()).WillByDefault(Return(true));
  ON_CALL(config_, pathWithEscapedSlashesAction())
      .WillByDefault(Return(envoy::extensions::filters::network::http_connection_manager::v3::
                                HttpConnectionManager::UNESCAPE_AND_FORWARD));
  TestRequestHeaderMapImpl original_headers;
  original_headers.setPath("/xyz%2f../%5Cabc");

  TestRequestHeaderMapImpl header_map(original_headers);
  EXPECT_EQ(ConnectionManagerUtility::NormalizePathAction::Continue,
            ConnectionManagerUtility::maybeNormalizePath(header_map, config_));
   
  EXPECT_EQ(header_map.getPathValue(), "//abc");
}