diff options
Diffstat (limited to 'test/integration/targets/dict_transformations/tasks')
3 files changed, 71 insertions, 0 deletions
diff --git a/test/integration/targets/dict_transformations/tasks/main.yml b/test/integration/targets/dict_transformations/tasks/main.yml new file mode 100644 index 0000000..03aa6e1 --- /dev/null +++ b/test/integration/targets/dict_transformations/tasks/main.yml @@ -0,0 +1,3 @@ +- include_tasks: test_convert_snake_case.yml + +- include_tasks: test_convert_camelCase.yml diff --git a/test/integration/targets/dict_transformations/tasks/test_convert_camelCase.yml b/test/integration/targets/dict_transformations/tasks/test_convert_camelCase.yml new file mode 100644 index 0000000..666e8d3 --- /dev/null +++ b/test/integration/targets/dict_transformations/tasks/test_convert_camelCase.yml @@ -0,0 +1,33 @@ +- convert_camelCase: + data: {'top_level_key': {'nested_key': 'do_not_convert'}} + register: result + +- assert: + that: + - "result.data == {'topLevelKey': {'nestedKey': 'do_not_convert'}}" + +- convert_camelCase: + data: {'t_o_p_level_key': {'n_e_s_t_e_d_key': 'do_not_convert'}} + register: result + +- assert: + that: + - "result.data == {'tOPLevelKey': {'nESTEDKey': 'do_not_convert'}}" + +- convert_camelCase: + data: {'t_o_p_level_key': {'n_e_s_t_e_d_key': 'do_not_convert'}} + capitalize_first: True + register: result + +- assert: + that: + - "result.data == {'TOPLevelKey': {'NESTEDKey': 'do_not_convert'}}" + +- convert_camelCase: + data: {'results': [{'i_a_m_user': 'user_name', 'tags': {'do_convert': 'do_not_convert'}}]} + capitalize_first: True + register: result + +- assert: + that: + - "result.data == {'Results': [{'IAMUser': 'user_name', 'Tags': {'DoConvert': 'do_not_convert'}}]}" diff --git a/test/integration/targets/dict_transformations/tasks/test_convert_snake_case.yml b/test/integration/targets/dict_transformations/tasks/test_convert_snake_case.yml new file mode 100644 index 0000000..cf700bc --- /dev/null +++ b/test/integration/targets/dict_transformations/tasks/test_convert_snake_case.yml @@ -0,0 +1,35 @@ +- convert_snake_case: + data: {'TOPLevelKey': {'NESTEDKey': 'DoNotConvert'}} + register: result + +- assert: + that: + - "result.data == {'top_level_key': {'nested_key': 'DoNotConvert'}}" + +- convert_snake_case: + data: {'TOPLevelKey': {'NESTEDKey': 'DoNotConvert'}} + reversible: True + register: result + +- assert: + that: + - "result.data == {'t_o_p_level_key': {'n_e_s_t_e_d_key': 'DoNotConvert'}}" + +- convert_snake_case: + data: {'Results': [{'IAMUser': 'UserName', 'Tags': {'DoConvert': 'DoNotConvert'}}], 'Tags': {'DoNotConvert': 'DoNotConvert'}} + reversible: True + ignore_list: ['Tags'] # Ignore top level 'Tags' key if found + register: result + +- assert: + that: + - "result.data == {'results': [{'i_a_m_user': 'UserName', 'tags': {'do_convert': 'DoNotConvert'}}], 'tags': {'DoNotConvert': 'DoNotConvert'}}" + +- name: Test converting dict keys in lists within lists + convert_snake_case: + data: {'Results': [{'Changes': [{'DoConvert': 'DoNotConvert', 'Details': ['DoNotConvert']}]}]} + register: result + +- assert: + that: + - "result.data == {'results': [{'changes': [{'do_convert': 'DoNotConvert', 'details': ['DoNotConvert']}]}]}" |