diff --git a/betterproto/tests/inputs/config.py b/betterproto/tests/inputs/config.py index 2525d8f..933fe96 100644 --- a/betterproto/tests/inputs/config.py +++ b/betterproto/tests/inputs/config.py @@ -13,6 +13,7 @@ tests = { "namespace_builtin_types", # 53 "googletypes_struct", # 9 "googletypes_value", # 9 + "to_dict_with_missing_enum", # 93 } services = { diff --git a/betterproto/tests/inputs/to_dict_with_missing_enum/test_to_dict_with_missing_enum.py b/betterproto/tests/inputs/to_dict_with_missing_enum/test_to_dict_with_missing_enum.py new file mode 100644 index 0000000..7c56f74 --- /dev/null +++ b/betterproto/tests/inputs/to_dict_with_missing_enum/test_to_dict_with_missing_enum.py @@ -0,0 +1,7 @@ +from betterproto.tests.output_betterproto.to_dict_with_missing_enum.to_dict_with_missing_enum import TestMessage + + +def test_message_attributes(): + assert TestMessage(x=TestMessage.MyEnum.ONE).to_dict()['x'] == "ONE", "MyEnum.ONE is not serialized to 'ONE'" + assert TestMessage(x=TestMessage.MyEnum.THREE).to_dict()['x'] == "THREE", "MyEnum.THREE is not serialized to 'THREE'" + assert TestMessage(x=TestMessage.MyEnum.FOUR).to_dict()['x'] == "FOUR", "MyEnum.FOUR is not serialized to 'FOUR'" diff --git a/betterproto/tests/inputs/to_dict_with_missing_enum/to_dict_with_missing_enum.proto b/betterproto/tests/inputs/to_dict_with_missing_enum/to_dict_with_missing_enum.proto new file mode 100644 index 0000000..56d2cf9 --- /dev/null +++ b/betterproto/tests/inputs/to_dict_with_missing_enum/to_dict_with_missing_enum.proto @@ -0,0 +1,12 @@ +syntax = "proto3"; + +message TestMessage { + enum MyEnum { + ZERO = 0; + ONE = 1; + // TWO = 2; + THREE = 3; + FOUR = 4; + } + MyEnum x = 1; +}