# Test code for the vmware_guest_powerstate module.
# Copyright: (c) 2017, 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
  vars:
    setup_attach_host: true
    setup_datastore: true

- name: Create a VM with the state poweredoff
  vmware_guest:
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    datacenter: "{{ dc1 }}"
    validate_certs: no
    folder: '{{ f0 }}'
    name: test_vm1
    state: poweredoff
    guest_id: debian8_64Guest
    disk:
    - size_gb: 1
      type: thin
      datastore: '{{ ds2 }}'
    hardware:
      memory_mb: 128
      num_cpus: 1
      scsi: paravirtual
    cdrom:
      type: iso
      iso_path: "[{{ ds1 }}] fedora.iso"
    networks:
    - name: VM Network

- name: set state to poweroff the first VM
  vmware_guest_powerstate:
    validate_certs: False
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    name: test_vm1
    folder: '{{ f0 }}'
    state: powered-off
  register: poweroff_d1_c1_f0

- debug:
    var: poweroff_d1_c1_f0

- name: make sure change was made
  assert:
    that:
        - not (poweroff_d1_c1_f0 is changed)

- when: vcsim is not defined
  block:
  - name: Set a schedule task for first VM
    vmware_guest_powerstate:
      validate_certs: False
      hostname: "{{ vcenter_hostname }}"
      username: "{{ vcenter_username }}"
      password: "{{ vcenter_password }}"
      name: test_vm1
      folder: '{{ f0 }}'
      scheduled_at: "10/10/2030 10:10"
      state: powered-on
    register: poweron_d1_c1_f0

  - name: Check that task is schedule
    assert:
      that:
        - poweron_d1_c1_f0 is changed
