diff --git a/tests/tests_invalid_input.yml b/tests/tests_invalid_input.yml index ce78a5f8..dfe5a18d 100644 --- a/tests/tests_invalid_input.yml +++ b/tests/tests_invalid_input.yml @@ -5,6 +5,13 @@ # that outcome. - name: Verify invalid parameters are rejected hosts: all + vars: + __invalid_input_failure_messages: >- + {{ ([ansible_failed_result.msg | default('') | string, + ansible_failed_result.msg.msg | default('') | string] + + (ansible_failed_result.results | default([]) + | map(attribute='msg') | map('default', '') | list)) + | join(' ') }} tasks: - name: Run invalid input tests block: @@ -30,6 +37,11 @@ - name: Mark invalid kernel_settings_purge type rejected ansible.builtin.set_fact: __invalid_input_purge_type_failed: true + when: + - >- + "argument 'kernel_settings_purge' is of type" in __invalid_input_failure_messages + - >- + 'unable to convert to bool' in __invalid_input_failure_messages - name: Assert invalid kernel_settings_purge type was rejected ansible.builtin.assert: @@ -49,6 +61,11 @@ - name: Mark invalid kernel_settings_reboot_ok type rejected ansible.builtin.set_fact: __invalid_input_reboot_ok_type_failed: true + when: + - >- + "argument 'kernel_settings_reboot_ok' is of type" in __invalid_input_failure_messages + - >- + 'unable to convert to bool' in __invalid_input_failure_messages - name: Assert invalid kernel_settings_reboot_ok type was rejected ansible.builtin.assert: @@ -72,6 +89,9 @@ - name: Mark kernel_settings_sysctl string rejected ansible.builtin.set_fact: __invalid_input_sysctl_string_failed: true + when: + - >- + 'kernel_settings_sysctl must be a list of dictionaries' in __invalid_input_failure_messages - name: Assert kernel_settings_sysctl as string failed validation ansible.builtin.assert: @@ -92,6 +112,11 @@ - name: Mark kernel_settings_sysctl invalid key rejected ansible.builtin.set_fact: __invalid_input_sysctl_bad_key_failed: true + when: + - >- + 'kernel_settings_sysctl[0] is invalid:' in __invalid_input_failure_messages + - >- + 'invalid_key_name' in __invalid_input_failure_messages - name: Assert kernel_settings_sysctl invalid key failed validation ansible.builtin.assert: @@ -113,6 +138,11 @@ - name: Mark kernel_settings_sysctl single-setting mapping rejected ansible.builtin.set_fact: __invalid_input_sysctl_single_dict_failed: true + when: + - >- + 'kernel_settings_sysctl must be a list of dictionaries' in __invalid_input_failure_messages + - >- + 'got dict' in __invalid_input_failure_messages - name: Assert kernel_settings_sysctl single-setting mapping failed validation ansible.builtin.assert: @@ -134,6 +164,11 @@ - name: Mark kernel_settings_sysctl empty sentinel extra keys rejected ansible.builtin.set_fact: __invalid_input_sysctl_empty_extra_failed: true + when: + - >- + 'kernel_settings_sysctl must be a list of dictionaries' in __invalid_input_failure_messages + - >- + 'got dict' in __invalid_input_failure_messages - name: Assert kernel_settings_sysctl empty sentinel extra keys failed validation ansible.builtin.assert: @@ -154,6 +189,11 @@ - name: Mark kernel_settings_sysctl missing name rejected ansible.builtin.set_fact: __invalid_input_sysctl_missing_name_failed: true + when: + - >- + 'kernel_settings_sysctl[0] is invalid:' in __invalid_input_failure_messages + - >- + "'value': 379724" in __invalid_input_failure_messages - name: Assert kernel_settings_sysctl missing name failed validation ansible.builtin.assert: @@ -174,6 +214,11 @@ - name: Mark kernel_settings_sysctl invalid previous rejected ansible.builtin.set_fact: __invalid_input_sysctl_bad_previous_failed: true + when: + - >- + 'kernel_settings_sysctl[0] is invalid:' in __invalid_input_failure_messages + - >- + 'not_replaced' in __invalid_input_failure_messages - name: Assert kernel_settings_sysctl invalid previous failed validation ansible.builtin.assert: @@ -193,6 +238,11 @@ - name: Mark kernel_settings_sysfs integer rejected ansible.builtin.set_fact: __invalid_input_sysfs_int_failed: true + when: + - >- + 'kernel_settings_sysfs must be a list of dictionaries' in __invalid_input_failure_messages + - >- + 'got int' in __invalid_input_failure_messages - name: Assert kernel_settings_sysfs as integer failed validation ansible.builtin.assert: @@ -212,6 +262,11 @@ - name: Mark kernel_settings_systemd_cpu_affinity integer rejected ansible.builtin.set_fact: __invalid_input_cpu_affinity_int_failed: true + when: + - >- + 'kernel_settings_systemd_cpu_affinity must be null, a string' in __invalid_input_failure_messages + - >- + 'got int' in __invalid_input_failure_messages - name: Assert kernel_settings_systemd_cpu_affinity as integer failed validation ansible.builtin.assert: @@ -232,6 +287,9 @@ - name: Mark invalid transparent_hugepages rejected ansible.builtin.set_fact: __invalid_input_trans_huge_choice_failed: true + when: + - >- + 'kernel_settings_transparent_hugepages must be null' in __invalid_input_failure_messages - name: Assert invalid transparent_hugepages choice failed validation ansible.builtin.assert: @@ -252,6 +310,9 @@ - name: Mark invalid transparent_hugepages_defrag rejected ansible.builtin.set_fact: __invalid_input_trans_defrag_choice_failed: true + when: + - >- + 'kernel_settings_transparent_hugepages_defrag must be null' in __invalid_input_failure_messages - name: Assert invalid transparent_hugepages_defrag choice failed validation ansible.builtin.assert: @@ -272,6 +333,9 @@ - name: Mark invalid transactional_update_reboot_ok rejected ansible.builtin.set_fact: __invalid_input_tu_reboot_type_failed: true + when: + - >- + 'kernel_settings_transactional_update_reboot_ok must be null' in __invalid_input_failure_messages - name: Assert transactional_update_reboot_ok as string failed validation ansible.builtin.assert: @@ -292,6 +356,11 @@ - name: Mark integer transactional_update_reboot_ok rejected ansible.builtin.set_fact: __invalid_input_tu_reboot_int_failed: true + when: + - >- + 'kernel_settings_transactional_update_reboot_ok must be null' in __invalid_input_failure_messages + - >- + 'got int' in __invalid_input_failure_messages - name: Assert transactional_update_reboot_ok as integer failed validation ansible.builtin.assert: