Explorar o código

Add conformance test for enum alias with same name but different case

Hao Nguyen %!s(int64=6) %!d(string=hai) anos
pai
achega
00b9b2303c
Modificáronse 1 ficheiros con 17 adicións e 0 borrados
  1. 17 0
      conformance/binary_json_conformance_suite.cc

+ 17 - 0
conformance/binary_json_conformance_suite.cc

@@ -1387,6 +1387,23 @@ void BinaryAndJsonConformanceSuite::RunSuiteImpl() {
       R"({"optionalNestedEnum": "FOO"})",
       "optional_nested_enum: FOO");
   // Enum fields with alias
+  RunValidJsonTest(
+      "EnumFieldWithAlias", REQUIRED,
+      R"({"optionalAliasedEnum": "ALIAS_BAZ"})",
+      "optional_aliased_enum: ALIAS_BAZ");
+  RunValidJsonTest(
+      "EnumFieldWithAliasUseAlias", REQUIRED,
+      R"({"optionalAliasedEnum": "QUX"})",
+      "optional_aliased_enum: ALIAS_BAZ");
+  RunValidJsonTest(
+      "EnumFieldWithAliasLowerCase", REQUIRED,
+      R"({"optionalAliasedEnum": "qux"})",
+      "optional_aliased_enum: ALIAS_BAZ");
+  RunValidJsonTest(
+      "EnumFieldWithAliasDifferentCase", REQUIRED,
+      R"({"optionalAliasedEnum": "bAz"})",
+      "optional_aliased_enum: ALIAS_BAZ");
+  // Enum fields with alias
   RunValidJsonTest(
       "EnumFieldWithAlias", REQUIRED,
       R"({"optionalAliasedEnum": "ALIAS_BAZ"})",