MATCHER_P(MetadataEq, expected, "") {
  const envoy::config::core::v3::Metadata* metadata = arg;
  if (!metadata) {
    return false;
  }
  EXPECT_TRUE(Envoy::Protobuf::util::MessageDifferencer::Equals(*metadata, expected));
  return true;
}
MATCHER_P(MetadataEq, expected, "") {
  const envoy::config::core::v3::Metadata* metadata = arg;
  if (!metadata) {
    return false;
  }
  EXPECT_TRUE(Envoy::Protobuf::util::MessageDifferencer::Equals(*metadata, expected));
  return true;
}