Add moto.core.utils.underscores_to_camelcase()
This commit is contained in:
parent
a4dfdc8274
commit
a06f8b15f5
@ -23,6 +23,22 @@ def camelcase_to_underscores(argument):
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
|
def underscores_to_camelcase(argument):
|
||||||
|
''' Converts a camelcase param like the_new_attribute to the equivalent
|
||||||
|
camelcase version like theNewAttribute. Note that the first letter is
|
||||||
|
NOT capitalized by this function '''
|
||||||
|
result = ''
|
||||||
|
previous_was_underscore = False
|
||||||
|
for char in argument:
|
||||||
|
if char != '_':
|
||||||
|
if previous_was_underscore:
|
||||||
|
result += char.upper()
|
||||||
|
else:
|
||||||
|
result += char
|
||||||
|
previous_was_underscore = char == '_'
|
||||||
|
return result
|
||||||
|
|
||||||
|
|
||||||
def method_names_from_class(clazz):
|
def method_names_from_class(clazz):
|
||||||
# On Python 2, methods are different from functions, and the `inspect`
|
# On Python 2, methods are different from functions, and the `inspect`
|
||||||
# predicates distinguish between them. On Python 3, methods are just
|
# predicates distinguish between them. On Python 3, methods are just
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
import sure
|
import sure
|
||||||
|
|
||||||
from moto.core.utils import camelcase_to_underscores
|
from moto.core.utils import camelcase_to_underscores, underscores_to_camelcase
|
||||||
|
|
||||||
|
|
||||||
def test_camelcase_to_underscores():
|
def test_camelcase_to_underscores():
|
||||||
@ -12,3 +12,11 @@ def test_camelcase_to_underscores():
|
|||||||
}
|
}
|
||||||
for arg, expected in cases.items():
|
for arg, expected in cases.items():
|
||||||
camelcase_to_underscores(arg).should.equal(expected)
|
camelcase_to_underscores(arg).should.equal(expected)
|
||||||
|
|
||||||
|
|
||||||
|
def test_underscores_to_camelcase():
|
||||||
|
cases = {
|
||||||
|
"the_new_attribute": "theNewAttribute",
|
||||||
|
}
|
||||||
|
for arg, expected in cases.items():
|
||||||
|
underscores_to_camelcase(arg).should.equal(expected)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user