Added abc.ABCMeta metaclass for abstract classes
Change-Id: I036148693a38fb1b0d1c298eb22d16e8d24ecacf
This commit is contained in:
parent
a00917a935
commit
fb488286e0
@ -20,6 +20,8 @@ import abc
|
|||||||
import collections
|
import collections
|
||||||
import itertools
|
import itertools
|
||||||
|
|
||||||
|
import six
|
||||||
|
|
||||||
from ceilometer.openstack.common import context
|
from ceilometer.openstack.common import context
|
||||||
from ceilometer.openstack.common import log
|
from ceilometer.openstack.common import log
|
||||||
from ceilometer.openstack.common import service as os_service
|
from ceilometer.openstack.common import service as os_service
|
||||||
@ -29,6 +31,7 @@ from ceilometer import transformer
|
|||||||
LOG = log.getLogger(__name__)
|
LOG = log.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
@six.add_metaclass(abc.ABCMeta)
|
||||||
class PollingTask(object):
|
class PollingTask(object):
|
||||||
"""Polling task for polling samples and inject into pipeline.
|
"""Polling task for polling samples and inject into pipeline.
|
||||||
A polling task can be invoked periodically or only once.
|
A polling task can be invoked periodically or only once.
|
||||||
@ -56,6 +59,7 @@ class PollingTask(object):
|
|||||||
"""Polling sample and publish into pipeline."""
|
"""Polling sample and publish into pipeline."""
|
||||||
|
|
||||||
|
|
||||||
|
@six.add_metaclass(abc.ABCMeta)
|
||||||
class AgentManager(os_service.Service):
|
class AgentManager(os_service.Service):
|
||||||
|
|
||||||
def __init__(self, extension_manager):
|
def __init__(self, extension_manager):
|
||||||
|
@ -21,6 +21,8 @@
|
|||||||
import abc
|
import abc
|
||||||
import collections
|
import collections
|
||||||
|
|
||||||
|
import six
|
||||||
|
|
||||||
from ceilometer.compute import plugin
|
from ceilometer.compute import plugin
|
||||||
from ceilometer.compute.pollsters import util
|
from ceilometer.compute.pollsters import util
|
||||||
from ceilometer.compute.virt import inspector as virt_inspector
|
from ceilometer.compute.virt import inspector as virt_inspector
|
||||||
@ -37,6 +39,7 @@ DiskIOData = collections.namedtuple(
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@six.add_metaclass(abc.ABCMeta)
|
||||||
class _Base(plugin.ComputePollster):
|
class _Base(plugin.ComputePollster):
|
||||||
|
|
||||||
DISKIO_USAGE_MESSAGE = ' '.join(["DISKIO USAGE:",
|
DISKIO_USAGE_MESSAGE = ' '.join(["DISKIO USAGE:",
|
||||||
|
@ -23,10 +23,10 @@ import abc
|
|||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
import mock
|
import mock
|
||||||
|
import six
|
||||||
from stevedore import extension
|
from stevedore import extension
|
||||||
from stevedore.tests import manager as extension_tests
|
from stevedore.tests import manager as extension_tests
|
||||||
|
|
||||||
from ceilometer import agent
|
|
||||||
from ceilometer.openstack.common.fixture import config
|
from ceilometer.openstack.common.fixture import config
|
||||||
from ceilometer import pipeline
|
from ceilometer import pipeline
|
||||||
from ceilometer import plugin
|
from ceilometer import plugin
|
||||||
@ -68,6 +68,7 @@ class TestPollsterException(TestPollster):
|
|||||||
raise Exception()
|
raise Exception()
|
||||||
|
|
||||||
|
|
||||||
|
@six.add_metaclass(abc.ABCMeta)
|
||||||
class BaseAgentManagerTestCase(base.BaseTestCase):
|
class BaseAgentManagerTestCase(base.BaseTestCase):
|
||||||
|
|
||||||
class Pollster(TestPollster):
|
class Pollster(TestPollster):
|
||||||
@ -154,13 +155,13 @@ class BaseAgentManagerTestCase(base.BaseTestCase):
|
|||||||
)
|
)
|
||||||
|
|
||||||
@abc.abstractmethod
|
@abc.abstractmethod
|
||||||
def setup_manager(self):
|
def create_manager(self):
|
||||||
"""Setup subclass specific managers."""
|
"""Return subclass specific manager."""
|
||||||
|
|
||||||
@mock.patch('ceilometer.pipeline.setup_pipeline', mock.MagicMock())
|
@mock.patch('ceilometer.pipeline.setup_pipeline', mock.MagicMock())
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BaseAgentManagerTestCase, self).setUp()
|
super(BaseAgentManagerTestCase, self).setUp()
|
||||||
self.setup_manager()
|
self.mgr = self.create_manager()
|
||||||
self.mgr.pollster_manager = self.create_extension_manager()
|
self.mgr.pollster_manager = self.create_extension_manager()
|
||||||
self.pipeline_cfg = [{
|
self.pipeline_cfg = [{
|
||||||
'name': "test_pipeline",
|
'name': "test_pipeline",
|
||||||
@ -276,7 +277,8 @@ class BaseAgentManagerTestCase(base.BaseTestCase):
|
|||||||
self.assertEqual(len(pub.samples), 0)
|
self.assertEqual(len(pub.samples), 0)
|
||||||
|
|
||||||
def test_agent_manager_start(self):
|
def test_agent_manager_start(self):
|
||||||
mgr = agent.AgentManager(self.mgr.pollster_manager)
|
mgr = self.create_manager()
|
||||||
|
mgr.pollster_manager = self.mgr.pollster_manager
|
||||||
mgr.create_polling_task = mock.MagicMock()
|
mgr.create_polling_task = mock.MagicMock()
|
||||||
mgr.tg = mock.MagicMock()
|
mgr.tg = mock.MagicMock()
|
||||||
mgr.start()
|
mgr.start()
|
||||||
|
@ -35,9 +35,9 @@ class TestManager(test.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class TestRunTasks(agentbase.BaseAgentManagerTestCase):
|
class TestRunTasks(agentbase.BaseAgentManagerTestCase):
|
||||||
|
@staticmethod
|
||||||
def setup_manager(self):
|
def create_manager():
|
||||||
self.mgr = manager.AgentManager()
|
return manager.AgentManager()
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(TestRunTasks, self).setUp()
|
super(TestRunTasks, self).setUp()
|
||||||
|
@ -45,8 +45,9 @@ class TestRunTasks(agentbase.BaseAgentManagerTestCase):
|
|||||||
def _raise_exception(self):
|
def _raise_exception(self):
|
||||||
raise Exception
|
raise Exception
|
||||||
|
|
||||||
def setup_manager(self):
|
@staticmethod
|
||||||
self.mgr = manager.AgentManager()
|
def create_manager():
|
||||||
|
return manager.AgentManager()
|
||||||
|
|
||||||
@mock.patch('ceilometer.pipeline.setup_pipeline', mock.MagicMock())
|
@mock.patch('ceilometer.pipeline.setup_pipeline', mock.MagicMock())
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user