@@ -3177,6 +3177,9 @@ TEST_F(MiscTest, StaticTypeNames) {
31773177 EXPECT_EQ(absl::string_view("sfixed64"), FD::TypeName(FD::TYPE_SFIXED64));
31783178 EXPECT_EQ(absl::string_view("sint32"), FD::TypeName(FD::TYPE_SINT32));
31793179 EXPECT_EQ(absl::string_view("sint64"), FD::TypeName(FD::TYPE_SINT64));
3180+
3181+ EXPECT_DEATH(FD::TypeName(static_cast<FD::Type>(FD::MAX_TYPE + 1)),
3182+ "Invalid input value");
31803183}
31813184
31823185TEST_F(MiscTest, CppTypes) {
@@ -3262,6 +3265,35 @@ TEST_F(MiscTest, StaticCppTypeNames) {
32623265 EXPECT_EQ(absl::string_view("enum"), FD::CppTypeName(FD::CPPTYPE_ENUM));
32633266 EXPECT_EQ(absl::string_view("string"), FD::CppTypeName(FD::CPPTYPE_STRING));
32643267 EXPECT_EQ(absl::string_view("message"), FD::CppTypeName(FD::CPPTYPE_MESSAGE));
3268+
3269+ EXPECT_DEATH(FD::CppTypeName(static_cast<FD::CppType>(FD::MAX_CPPTYPE + 1)),
3270+ "Invalid input value");
3271+ }
3272+
3273+ TEST_F(MiscTest, StaticTypeToCppType) {
3274+ typedef FieldDescriptor FD; // avoid ugly line wrapping
3275+ //
3276+ EXPECT_EQ(FD::CPPTYPE_DOUBLE, FD::TypeToCppType(FD::TYPE_DOUBLE));
3277+ EXPECT_EQ(FD::CPPTYPE_FLOAT, FD::TypeToCppType(FD::TYPE_FLOAT));
3278+ EXPECT_EQ(FD::CPPTYPE_INT64, FD::TypeToCppType(FD::TYPE_INT64));
3279+ EXPECT_EQ(FD::CPPTYPE_UINT64, FD::TypeToCppType(FD::TYPE_UINT64));
3280+ EXPECT_EQ(FD::CPPTYPE_INT32, FD::TypeToCppType(FD::TYPE_INT32));
3281+ EXPECT_EQ(FD::CPPTYPE_UINT64, FD::TypeToCppType(FD::TYPE_FIXED64));
3282+ EXPECT_EQ(FD::CPPTYPE_UINT32, FD::TypeToCppType(FD::TYPE_FIXED32));
3283+ EXPECT_EQ(FD::CPPTYPE_BOOL, FD::TypeToCppType(FD::TYPE_BOOL));
3284+ EXPECT_EQ(FD::CPPTYPE_STRING, FD::TypeToCppType(FD::TYPE_STRING));
3285+ EXPECT_EQ(FD::CPPTYPE_MESSAGE, FD::TypeToCppType(FD::TYPE_GROUP));
3286+ EXPECT_EQ(FD::CPPTYPE_MESSAGE, FD::TypeToCppType(FD::TYPE_MESSAGE));
3287+ EXPECT_EQ(FD::CPPTYPE_STRING, FD::TypeToCppType(FD::TYPE_BYTES));
3288+ EXPECT_EQ(FD::CPPTYPE_UINT32, FD::TypeToCppType(FD::TYPE_UINT32));
3289+ EXPECT_EQ(FD::CPPTYPE_ENUM, FD::TypeToCppType(FD::TYPE_ENUM));
3290+ EXPECT_EQ(FD::CPPTYPE_INT32, FD::TypeToCppType(FD::TYPE_SFIXED32));
3291+ EXPECT_EQ(FD::CPPTYPE_INT64, FD::TypeToCppType(FD::TYPE_SFIXED64));
3292+ EXPECT_EQ(FD::CPPTYPE_INT32, FD::TypeToCppType(FD::TYPE_SINT32));
3293+ EXPECT_EQ(FD::CPPTYPE_INT64, FD::TypeToCppType(FD::TYPE_SINT64));
3294+
3295+ EXPECT_DEATH(FD::TypeToCppType(static_cast<FD::Type>(FD::MAX_TYPE + 1)),
3296+ "Invalid input value");
32653297}
32663298
32673299TEST_F(MiscTest, MessageType) {
0 commit comments