def test_lib_loading_failure(monkeypatch, fake_ansible_module, key, libname): """ Test if Pyvmomi is present or not""" monkeypatch.setattr(vmware_module_utils, key, False) with pytest.raises(FailJsonException): vmware_module_utils.PyVmomi(fake_ansible_module) error_str = 'Failed to import the required Python library (%s)' % libname assert fake_ansible_module.fail_json.called_once() assert error_str in fake_ansible_module.fail_json.call_args[1]['msg']
def test_vmdk_disk_path_split(monkeypatch, fake_ansible_module): """ Test vmdk_disk_path_split function""" fake_ansible_module.params = test_data[0][0] monkeypatch.setattr(vmware_module_utils, 'connect_to_api', fake_connect_to_api) pyv = vmware_module_utils.PyVmomi(fake_ansible_module) v = pyv.vmdk_disk_path_split('[ds1] VM_0001/VM0001_0.vmdk') assert v == ('ds1', 'VM_0001/VM0001_0.vmdk', 'VM0001_0.vmdk', 'VM_0001')
def test_vmdk_disk_path_split_negative(monkeypatch, fake_ansible_module): """ Test vmdk_disk_path_split function""" fake_ansible_module.params = test_data[0][0] monkeypatch.setattr(vmware_module_utils, 'connect_to_api', fake_connect_to_api) with pytest.raises(FailJsonException): pyv = vmware_module_utils.PyVmomi(fake_ansible_module) pyv.vmdk_disk_path_split('[ds1]') assert fake_ansible_module.fail_json.called_once() assert 'Bad path' in fake_ansible_module.fail_json.call_args[1]['msg']
def test_validate_certs(monkeypatch, fake_ansible_module): """ Test if SSL is required or not""" fake_ansible_module.params = test_data[3][0] monkeypatch.setattr(vmware_module_utils, 'ssl', None) with pytest.raises(FailJsonException): vmware_module_utils.PyVmomi(fake_ansible_module) msg = 'pyVim does not support changing verification mode with python < 2.7.9.' \ ' Either update python or use validate_certs=false.' assert fake_ansible_module.fail_json.called_once() assert msg in fake_ansible_module.fail_json.call_args[1]['msg']