File tree 2 files changed +8
-1
lines changed
2 files changed +8
-1
lines changed Original file line number Diff line number Diff line change @@ -202,4 +202,5 @@ def is_process_alive(pid):
202
202
203
203
204
204
def camel_to_underscore (camelcase ):
205
- return re .sub ('([A-Z]+)' , r'_\1' , camelcase ).lower ()
205
+ s1 = re .sub ('([^_])([A-Z][a-z]+)' , r'\1_\2' , camelcase )
206
+ return re .sub ('([a-z0-9])([A-Z])' , r'\1_\2' , s1 ).lower ()
Original file line number Diff line number Diff line change @@ -93,3 +93,9 @@ def test_camel_to_underscore():
93
93
assert _utils .camel_to_underscore ('camelCase' ) == 'camel_case'
94
94
assert _utils .camel_to_underscore ('hangClosing' ) == 'hang_closing'
95
95
assert _utils .camel_to_underscore ('ignore' ) == 'ignore'
96
+ assert _utils .camel_to_underscore ('CamelCase' ) == 'camel_case'
97
+ assert _utils .camel_to_underscore ('SomeLongCamelCase' ) == 'some_long_camel_case'
98
+ assert _utils .camel_to_underscore ('already_using_underscore' ) == 'already_using_underscore'
99
+ assert _utils .camel_to_underscore ('Using_only_someUnderscore' ) == 'using_only_some_underscore'
100
+ assert _utils .camel_to_underscore ('Using_Only_Some_underscore' ) == 'using_only_some_underscore'
101
+ assert _utils .camel_to_underscore ('ALL_UPPER_CASE' ) == 'all_upper_case'
You can’t perform that action at this time.
0 commit comments