--- - name: fail if value is not set and state=present win_chocolatey_config: name: cacheLocation state: present register: fail_no_value failed_when: 'fail_no_value.msg != "Get-AnsibleParam: Missing required argument: value"' - name: fail to set invalid config name win_chocolatey_config: name: fake state: present value: value register: fail_invalid_name failed_when: '"The Chocolatey config ''fake'' is not an existing config value, check the spelling. Valid config names: " not in fail_invalid_name.msg' - name: set config setting (check mode) win_chocolatey_config: name: cacheLocation state: present value: C:\temp check_mode: yes register: set_check - name: get actual config setting (check mode) win_command: choco.exe config get -r --name cacheLocation register: set_actual_check - name: assert set config setting (check mode) assert: that: - set_check is changed - set_actual_check.stdout_lines == [""] - name: set config setting win_chocolatey_config: name: cacheLocation state: present value: C:\temp register: set - name: get actual config setting win_command: choco.exe config get -r --name cacheLocation register: set_actual - name: assert set config setting assert: that: - set is changed - set_actual.stdout_lines == ["C:\\temp"] - name: change config value (check mode) win_chocolatey_config: name: cacheLocation state: present value: C:\temp2 check_mode: yes register: change_check - name: get actual config setting (check mode) win_command: choco.exe config get -r --name cacheLocation register: change_actual_check - name: assert change config value (check mode) assert: that: - change_check is changed - change_actual_check.stdout_lines == ["C:\\temp"] - name: change config value win_chocolatey_config: name: cacheLocation state: present value: C:\temp2 register: change - name: get actual config setting win_command: choco.exe config get -r --name cacheLocation register: change_actual - name: assert change config value assert: that: - change is changed - change_actual.stdout_lines == ["C:\\temp2"] - name: change config value (idempotent) win_chocolatey_config: name: cacheLocation state: present value: C:\temp2 register: change_again - name: assert change config value (idempotent) assert: that: - not change_again is changed - name: unset config value (check mode) win_chocolatey_config: name: cacheLocation state: absent check_mode: yes register: unset_check - name: get actual config setting (check mode) win_command: choco.exe config get -r --name cacheLocation register: unset_actual_check - name: assert unset config value (check mode) assert: that: - unset_check is changed - unset_actual_check.stdout_lines == ["C:\\temp2"] - name: unset config value win_chocolatey_config: name: cacheLocation state: absent register: unset - name: get actual config setting win_command: choco.exe config get -r --name cacheLocation register: unset_actual - name: assert unset config value assert: that: - unset is changed - unset_actual.stdout_lines == [""] - name: unset config value (idempotent) win_chocolatey_config: name: cacheLocation state: absent register: unset_again - name: assert unset config value (idempotent) assert: that: - not unset_again is changed