Skip to content

Commit 686b63e

Browse files
fix naming, update unit tests
1 parent cd9612e commit 686b63e

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

airbyte_cdk/sources/declarative/interpolation/macros.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,15 @@ def sanitize_url(value: str) -> str:
195195
return sanitization_strategy(value)
196196

197197

198-
def camel_cate_to_snake_case(value: str) -> str:
198+
def camel_case_to_snake_case(value: str) -> str:
199+
"""
200+
Converts CamelCase strings to snake_case format
201+
202+
Usage:
203+
`"{{ camel_case_to_snake_case('CamelCase') }}"`
204+
:param value: string to convert from CamelCase to snake_case
205+
:return: snake_case formatted string
206+
"""
199207
return re.sub(r"(?<!^)(?=[A-Z])", "_", value).lower()
200208

201209

@@ -211,6 +219,6 @@ def camel_cate_to_snake_case(value: str) -> str:
211219
today_with_timezone,
212220
str_to_datetime,
213221
sanitize_url,
214-
camel_cate_to_snake_case,
222+
camel_case_to_snake_case,
215223
]
216224
macros = {f.__name__: f for f in _macros_list}

unit_tests/sources/declarative/interpolation/test_macros.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
("test_day_delta", "day_delta", True),
2020
("test_format_datetime", "format_datetime", True),
2121
("test_duration", "duration", True),
22+
("test_camel_case_to_snake_case", "camel_case_to_snake_case", True),
2223
("test_not_a_macro", "thisisnotavalidmacro", False),
2324
],
2425
)
@@ -272,5 +273,5 @@ def test_sanitize_url(test_name, input_value, expected_output):
272273
),
273274
],
274275
)
275-
def test_camel_cate_to_snake_case(value, expected_value):
276-
assert macros["camel_cate_to_snake_case"](value) == expected_value
276+
def test_camel_case_to_snake_case(value, expected_value):
277+
assert macros["camel_case_to_snake_case"](value) == expected_value

0 commit comments

Comments
 (0)