Skip tests when no libcloud

This commit is contained in:
Daniel A. Wozniak 2019-04-28 05:45:55 +00:00 committed by Pedro Algarvio
parent 1d92290304
commit 62c0f9fdd9
No known key found for this signature in database
GPG key ID: BB36BF6584A298FF
2 changed files with 33 additions and 26 deletions

View file

@ -28,6 +28,7 @@ def get_mock_driver():
@skipIf(NO_MOCK, NO_MOCK_REASON)
@skipIf(not libcloud_dns.HAS_LIBCLOUD, 'No libcloud installed')
class LibcloudDnsModuleTestCase(TestCase, LoaderModuleMockMixin):
def setup_loader_modules(self):

View file

@ -17,39 +17,44 @@ from tests.support.mock import (
)
import salt.modules.libcloud_storage as libcloud_storage
from libcloud.storage.base import Container, BaseDriver, Object
try:
from libcloud.storage.base import Container, BaseDriver, Object
HAS_LIBCLOUD = True
except ImportError:
HAS_LIBCLOUD = False
class MockStorageDriver(BaseDriver):
def __init__(self):
self._TEST_CONTAINER = Container(name='test_container', extra={}, driver=self)
self._TEST_OBJECT = Object(name='test_obj',
size=1234,
hash='123sdfsdf',
extra={},
meta_data={'key': 'value'},
container=self._TEST_CONTAINER,
driver=self)
if HAS_LIBCLOUD:
class MockStorageDriver(BaseDriver):
def __init__(self):
self._TEST_CONTAINER = Container(name='test_container', extra={}, driver=self)
self._TEST_OBJECT = Object(name='test_obj',
size=1234,
hash='123sdfsdf',
extra={},
meta_data={'key': 'value'},
container=self._TEST_CONTAINER,
driver=self)
def list_containers(self):
return [self._TEST_CONTAINER]
def list_containers(self):
return [self._TEST_CONTAINER]
def get_container(self, container_name):
assert container_name == 'test_container'
return self._TEST_CONTAINER
def get_container(self, container_name):
assert container_name == 'test_container'
return self._TEST_CONTAINER
def list_container_objects(self, container):
assert container.name == 'test_container'
return [self._TEST_OBJECT]
def list_container_objects(self, container):
assert container.name == 'test_container'
return [self._TEST_OBJECT]
def create_container(self, container_name):
assert container_name == 'new_test_container'
return self._TEST_CONTAINER
def create_container(self, container_name):
assert container_name == 'new_test_container'
return self._TEST_CONTAINER
def get_container_object(self, container_name, object_name):
assert container_name == 'test_container'
assert object_name == 'test_obj'
return self._TEST_OBJECT
def get_container_object(self, container_name, object_name):
assert container_name == 'test_container'
assert object_name == 'test_obj'
return self._TEST_OBJECT
def get_mock_driver():
@ -57,6 +62,7 @@ def get_mock_driver():
@skipIf(NO_MOCK, NO_MOCK_REASON)
@skipIf(not HAS_LIBCLOUD, 'No libcloud installed')
@patch('salt.modules.libcloud_storage._get_driver',
MagicMock(return_value=MockStorageDriver()))
class LibcloudStorageModuleTestCase(TestCase, LoaderModuleMockMixin):