# test code for the win_ping module # (c) 2014, Chris Church # This file is part of Ansible # # Ansible is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # Ansible is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Ansible. If not, see . - name: test win_ping action: win_ping register: win_ping_result - name: check win_ping result assert: that: - not win_ping_result|failed - not win_ping_result|changed - win_ping_result.ping == 'pong' - name: test win_ping with data win_ping: data: ☠ register: win_ping_with_data_result - name: check win_ping result with data assert: that: - not win_ping_with_data_result|failed - not win_ping_with_data_result|changed - win_ping_with_data_result.ping == '☠' - name: test win_ping.ps1 with data as complex args win_ping.ps1: data: bleep register: win_ping_ps1_result - name: check win_ping.ps1 result with data assert: that: - not win_ping_ps1_result|failed - not win_ping_ps1_result|changed - win_ping_ps1_result.ping == 'bleep' - name: test win_ping with extra args to verify that v2 module replacer escaping works as expected win_ping: data: bloop a_null: null a_boolean: true another_boolean: false a_number: 299792458 another_number: 22.7 yet_another_number: 6.022e23 a_string: | it's magic "@' '@" an_array: - first - 2 - 3.0 an_object: - the_thing: the_value - the_other_thing: 0 - the_list_of_things: [1, 2, 3, 5] register: win_ping_extra_args_result - name: check that win_ping with extra args succeeds and ignores everything except data assert: that: - not win_ping_extra_args_result|failed - not win_ping_extra_args_result|changed - win_ping_extra_args_result.ping == 'bloop' - name: test win_ping using data=crash so that it throws an exception win_ping: data: crash register: win_ping_crash_result ignore_errors: yes - name: check win_ping_crash result assert: that: - win_ping_crash_result|failed - not win_ping_crash_result|changed - "'FullyQualifiedErrorId : boom' in win_ping_crash_result.module_stderr" # TODO: fix code or tests? discrete error returns from PS are strange... #- name: test modified win_ping that throws an exception # action: win_ping_throw # register: win_ping_throw_result # ignore_errors: true # #- name: check win_ping_throw result # assert: # that: # - win_ping_throw_result|failed # - not win_ping_throw_result|changed # - win_ping_throw_result.msg == 'MODULE FAILURE' # - win_ping_throw_result.exception # - win_ping_throw_result.error_record # #- name: test modified win_ping that throws a string exception # action: win_ping_throw_string # register: win_ping_throw_string_result # ignore_errors: true # #- name: check win_ping_throw_string result # assert: # that: # - win_ping_throw_string_result|failed # - not win_ping_throw_string_result|changed # - win_ping_throw_string_result.msg == 'no ping for you' # - win_ping_throw_string_result.exception # - win_ping_throw_string_result.error_record # #- name: test modified win_ping that has a syntax error # action: win_ping_syntax_error # register: win_ping_syntax_error_result # ignore_errors: true # #- name: check win_ping_syntax_error result # assert: # that: # - win_ping_syntax_error_result|failed # - not win_ping_syntax_error_result|changed # - win_ping_syntax_error_result.msg # - win_ping_syntax_error_result.exception # #- name: test modified win_ping that has an error that only surfaces when strict mode is on # action: win_ping_strict_mode_error # register: win_ping_strict_mode_error_result # ignore_errors: true # #- name: check win_ping_strict_mode_error result # assert: # that: # - win_ping_strict_mode_error_result|failed # - not win_ping_strict_mode_error_result|changed # - win_ping_strict_mode_error_result.msg # - win_ping_strict_mode_error_result.exception # #- name: test modified win_ping to verify a Set-Attr fix # action: win_ping_set_attr data="fixed" # register: win_ping_set_attr_result # #- name: check win_ping_set_attr_result result # assert: # that: # - not win_ping_set_attr_result|failed # - not win_ping_set_attr_result|changed # - win_ping_set_attr_result.ping == 'fixed'