示例#1
0
    def __init__(self, collectd):
        self._meters = {}
        self._default = Meter(collectd=collectd)

        # fill dict with specialized meters classes
        self._meters = {key: meter_class(collectd=collectd)
                        for key, meter_class in six.iteritems(self._classes)}
示例#2
0
    def test_sample_type_counter(self, collectd):
        # sample_type uses get_dataset()[0][1]
        collectd.get_dataset.return_value = [('value', 'counter', )]
        meter = Meter(collectd)

        actual = meter.sample_type(Values())

        collectd.get_dataset.assert_called_once()
        self.assertEqual("cumulative", actual)
示例#3
0
    def test_sample_type_invalid(self, collectd, LOGGER):
        collectd.get_dataset.side_effect = Exception("Boom!")
        meter = Meter(collectd)

        actual = meter.sample_type(Values())

        collectd.get_dataset.assert_called_once()
        LOGGER.warning.assert_called_once()
        self.assertEqual("gauge", actual)
示例#4
0
    def test_sample_type_derive(self, collectd):
        # sample_type uses get_dataset()[0][1]
        collectd.get_dataset.return_value = [('value', 'derive', )]
        meter = Meter(collectd)

        actual = meter.sample_type(Values())

        collectd.get_dataset.assert_called_once()
        self.assertEqual("delta", actual)
 def setUp(self, collectd):
     super(MetersTest, self).setUp()
     self._collectd = collectd
     # need this as a parameter for sample_type()
     self.vl = Values()
     self.meter = Meter(self._collectd)