File tree Expand file tree Collapse file tree 3 files changed +27
-2
lines changed
tests/inputs/casing_inner_class Expand file tree Collapse file tree 3 files changed +27
-2
lines changed Original file line number Diff line number Diff line change @@ -44,12 +44,12 @@ def _traverse(
4444 for i , item in enumerate (items ):
4545 # Adjust the name since we flatten the hierarchy.
4646 # Todo: don't change the name, but include full name in returned tuple
47- item .name = next_prefix = prefix + item .name
47+ item .name = next_prefix = f" { prefix } _ { item .name } "
4848 yield item , path + [i ]
4949
5050 if isinstance (item , DescriptorProto ):
5151 for enum in item .enum_type :
52- enum .name = next_prefix + enum .name
52+ enum .name = f" { next_prefix } _ { enum .name } "
5353 yield enum , path + [i , 4 ]
5454
5555 if item .nested_type :
Original file line number Diff line number Diff line change 1+ // https://github.com/danielgtaylor/python-betterproto/issues/344
2+ syntax = "proto3" ;
3+
4+ package casing_inner_class ;
5+
6+ message Test {
7+ message inner_class {
8+ sint32 old_exp = 1 ;
9+ }
10+ inner_class inner = 2 ;
11+ }
Original file line number Diff line number Diff line change 1+ import tests .output_betterproto .casing_inner_class as casing_inner_class
2+
3+
4+ def test_message_casing_inner_class_name ():
5+ assert hasattr (
6+ casing_inner_class , "TestInnerClass"
7+ ), "Inline defined Message is correctly converted to CamelCase"
8+
9+
10+ def test_message_casing_inner_class_attributes ():
11+ message = casing_inner_class .Test ()
12+ assert hasattr (
13+ message .inner , "old_exp"
14+ ), "Inline defined Message attribute is snake_case"
You can’t perform that action at this time.
0 commit comments