Project import generated by Copybara.
GitOrigin-RevId: e3a43e4e5e519cd14df7095749059e2613bdcf76
This commit is contained in:
@@ -174,54 +174,13 @@ TEST(PacketTest, ReturnGenericProtobufMessage) {
|
||||
.x(0));
|
||||
}
|
||||
|
||||
TEST(PacketTest, ReturnProtobufMessageSubType) {
|
||||
std::unique_ptr<::mediapipe::PacketTestProto> proto_ptr(
|
||||
new ::mediapipe::PacketTestProto);
|
||||
proto_ptr->add_x(123);
|
||||
Packet packet = Adopt(static_cast<proto_ns::Message*>(proto_ptr.release()));
|
||||
EXPECT_EQ(123, packet.Get<::mediapipe::PacketTestProto>().x(0));
|
||||
EXPECT_EQ(123, packet.Get<const ::mediapipe::PacketTestProto>().x(0));
|
||||
}
|
||||
|
||||
TEST(PacketTest, TryWrongProtobufMessageSubType) {
|
||||
// Packet of PacketTestProto.
|
||||
std::unique_ptr<::mediapipe::PacketTestProto> proto_ptr(
|
||||
new ::mediapipe::PacketTestProto);
|
||||
proto_ptr->add_x(123);
|
||||
Packet packet = Adopt(proto_ptr.release());
|
||||
EXPECT_FALSE(packet.ValidateAsType<::mediapipe::SimpleProto>().ok());
|
||||
EXPECT_TRUE(packet.ValidateAsType<::mediapipe::PacketTestProto>().ok());
|
||||
|
||||
// Packet of proto_ns::Message.
|
||||
proto_ptr.reset(new ::mediapipe::PacketTestProto);
|
||||
proto_ptr->add_x(456);
|
||||
Packet packet2 = Adopt(static_cast<proto_ns::Message*>(proto_ptr.release()));
|
||||
EXPECT_FALSE(packet2.ValidateAsType<::mediapipe::SimpleProto>().ok());
|
||||
EXPECT_TRUE(packet2.ValidateAsType<::mediapipe::PacketTestProto>().ok());
|
||||
EXPECT_EQ(123, packet.Get<::mediapipe::PacketTestProto>().x(0));
|
||||
}
|
||||
|
||||
TEST(PacketTest, ReturnProtobufMessageLiteSubType) {
|
||||
std::unique_ptr<::mediapipe::PacketTestProto> proto_ptr(
|
||||
new ::mediapipe::PacketTestProto);
|
||||
proto_ptr->add_x(123);
|
||||
Packet packet =
|
||||
Adopt(static_cast<proto_ns::MessageLite*>(proto_ptr.release()));
|
||||
EXPECT_EQ(123, packet.Get<::mediapipe::PacketTestProto>().x(0));
|
||||
EXPECT_EQ(123, packet.Get<const ::mediapipe::PacketTestProto>().x(0));
|
||||
}
|
||||
|
||||
TEST(PacketTest, TryWrongProtobufMessageLiteSubType) {
|
||||
// Packet of PacketTestProto.
|
||||
std::unique_ptr<::mediapipe::PacketTestProto> proto_ptr(
|
||||
new ::mediapipe::PacketTestProto);
|
||||
// Packet of proto_ns::MessageLite.
|
||||
proto_ptr->add_x(456);
|
||||
Packet packet =
|
||||
Adopt(static_cast<proto_ns::MessageLite*>(proto_ptr.release()));
|
||||
EXPECT_FALSE(packet.ValidateAsType<::mediapipe::SimpleProto>().ok());
|
||||
EXPECT_TRUE(packet.ValidateAsType<::mediapipe::PacketTestProto>().ok());
|
||||
EXPECT_EQ(456, packet.Get<::mediapipe::PacketTestProto>().x(0));
|
||||
}
|
||||
|
||||
TEST(PacketTest, GetProtoBase) {
|
||||
@@ -505,5 +464,26 @@ TEST(PacketTest, TestConsumeOrCopyBoundedArray) {
|
||||
EXPECT_TRUE(packet2.IsEmpty());
|
||||
}
|
||||
|
||||
TEST(PacketTest, MessageHolderRegistration) {
|
||||
using testing::Contains;
|
||||
Packet packet = MakePacket<mediapipe::SimpleProto>();
|
||||
ASSERT_EQ(mediapipe::SimpleProto{}.GetTypeName(), "mediapipe.SimpleProto");
|
||||
EXPECT_THAT(packet_internal::MessageHolderRegistry::GetRegisteredNames(),
|
||||
Contains("mediapipe.SimpleProto"));
|
||||
}
|
||||
|
||||
TEST(PacketTest, PacketFromSerializedProto) {
|
||||
mediapipe::SimpleProto original;
|
||||
original.add_value("foo");
|
||||
std::string serialized = original.SerializeAsString();
|
||||
|
||||
StatusOr<Packet> maybe_packet = packet_internal::PacketFromDynamicProto(
|
||||
"mediapipe.SimpleProto", serialized);
|
||||
MP_ASSERT_OK(maybe_packet);
|
||||
Packet packet = maybe_packet.ValueOrDie();
|
||||
MP_EXPECT_OK(packet.ValidateAsType<::mediapipe::SimpleProto>());
|
||||
EXPECT_FALSE(packet.ValidateAsType<::mediapipe::PacketTestProto>().ok());
|
||||
}
|
||||
|
||||
} // namespace
|
||||
} // namespace mediapipe
|
||||
|
||||
Reference in New Issue
Block a user