You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/targets/vmware_local_role_info/tasks/main.yml

47 lines
1.3 KiB
YAML

# Test code for the vmware_local_role_info module
# Copyright: (c) 2018, Abhijeet Kasurde <akasurde@redhat.com>
# 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