# Test code for the vmware_local_role_info module # Copyright: (c) 2018, Abhijeet Kasurde # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) - import_role: name: prepare_vmware_tests - name: Set list of Roles in fact set_fact: role_list: - Admin # NoCryptoAdmin has no privilege with govcsim # - NoCryptoAdmin - Anonymous - ReadOnly - &role_data name: Gather Role info vmware_local_role_info: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" validate_certs: no register: role_details - &list_to_dict name: List to dict set_fact: role_dict: "{{ dict(role_details.local_role_info|map(attribute='role_name')|zip(role_details.local_role_info)) }}" - name: Test if NoAccess has no privilege assert: that: "{{ role_dict['NoAccess']['privileges'] | list | length == 0 }}" - &role_test name: Test if role id is present for role assert: that: "{{ role_dict[item]['privileges'] | list | length > 0 }}" with_items: "{{ role_list }}" - <<: *role_data name: Gather Role info in check mode check_mode: yes - <<: *list_to_dict - <<: *role_test name: Test if role id is present for role in check mode