File tree 3 files changed +17
-3
lines changed
3 files changed +17
-3
lines changed Original file line number Diff line number Diff line change @@ -19,8 +19,7 @@ class Reference:
19
19
def from_ref (ref : str ) -> "Reference" :
20
20
""" Get a Reference from the openapi #/schemas/blahblah string """
21
21
ref_value = ref .split ("/" )[- 1 ]
22
- # ugly hack to avoid stringcase ugly pascalcase output when ref_value isn't snake case
23
- class_name = utils .pascal_case (ref_value .replace (" " , "" ))
22
+ class_name = utils .pascal_case (ref_value )
24
23
25
24
if class_name in class_overrides :
26
25
return class_overrides [class_name ]
Original file line number Diff line number Diff line change @@ -26,7 +26,7 @@ def snake_case(value: str) -> str:
26
26
27
27
28
28
def pascal_case (value : str ) -> str :
29
- return fix_keywords (stringcase .pascalcase (sanitize (value )))
29
+ return fix_keywords (stringcase .pascalcase (sanitize (value . replace ( " " , "" ) )))
30
30
31
31
32
32
def kebab_case (value : str ) -> str :
Original file line number Diff line number Diff line change
1
+ import pytest
2
+
1
3
from openapi_python_client import utils
2
4
3
5
@@ -41,3 +43,16 @@ def test_to_valid_python_identifier():
41
43
assert utils .to_valid_python_identifier ("1" ) == "field_1"
42
44
assert utils .to_valid_python_identifier ("$" ) == "field_"
43
45
assert utils .to_valid_python_identifier ("for" ) == "for_"
46
+
47
+
48
+ @pytest .mark .parametrize (
49
+ "before, after" ,
50
+ [
51
+ ("PascalCase" , "PascalCase" ),
52
+ ("snake_case" , "SnakeCase" ),
53
+ ("TLAClass" , "TLAClass" ),
54
+ ("Title Case" , "TitleCase" ),
55
+ ],
56
+ )
57
+ def test_pascalcase (before , after ):
58
+ assert utils .pascal_case (before ) == after
You can’t perform that action at this time.
0 commit comments