# Test code for the Meraki Organization module # Copyright: (c) 2018, Kevin Breit (@kbreit) # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) --- - block: - name: Test an API key is provided fail: msg: Please define an API key when: auth_key is not defined - name: Use an invalid domain meraki_config_template: auth_key: '{{ auth_key }}' host: marrrraki.com state: query org_name: DevTestOrg output_level: debug delegate_to: localhost register: invalid_domain ignore_errors: yes - name: Connection assertions assert: that: - '"Failed to connect to" in invalid_domain.msg' - name: Query all configuration templates meraki_config_template: auth_key: '{{auth_key}}' state: query org_name: DevTestOrg register: get_all - name: Delete non-existant configuration template meraki_config_template: auth_key: '{{auth_key}}' state: absent org_name: DevTestOrg config_template: DevConfigTemplateInvalid register: deleted ignore_errors: yes - assert: that: - '"No configuration template named" in deleted.msg' - name: Create a network meraki_network: auth_key: '{{auth_key}}' state: present org_name: '{{ test_org_name }}' net_name: '{{ test_net_name }}' type: appliance delegate_to: localhost - name: Bind a template to a network meraki_config_template: auth_key: '{{auth_key}}' state: present org_name: '{{ test_org_name }}' net_name: '{{ test_net_name }}' config_template: DevConfigTemplate register: bind - assert: that: bind.changed == True - name: Bind a template to a network when it's already bound meraki_config_template: auth_key: '{{auth_key}}' state: present org_name: '{{ test_org_name }}' net_name: '{{ test_net_name }}' config_template: DevConfigTemplate register: bind_invalid ignore_errors: yes - assert: that: - bind_invalid.changed == False - name: Unbind a template from a network meraki_config_template: auth_key: '{{auth_key}}' state: absent org_name: '{{ test_org_name }}' net_name: '{{ test_net_name }}' config_template: DevConfigTemplate register: unbind - assert: that: unbind.changed == True - name: Unbind a template from a network when it's not bound meraki_config_template: auth_key: '{{auth_key}}' state: absent org_name: '{{ test_org_name }}' net_name: '{{ test_net_name }}' config_template: DevConfigTemplate register: unbind_invalid - assert: that: unbind_invalid.changed == False always: - name: Delete network meraki_network: auth_key: '{{auth_key}}' state: absent org_name: '{{ test_org_name }}' net_name: '{{ test_net_name }}' delegate_to: localhost