Merge "Use tzutils functions in gnocchi collector"
This commit is contained in:
@@ -31,6 +31,7 @@ from voluptuous import Schema
|
||||
|
||||
from cloudkitty import collector
|
||||
from cloudkitty import dataframe
|
||||
from cloudkitty import tzutils
|
||||
from cloudkitty import utils as ck_utils
|
||||
|
||||
|
||||
@@ -251,8 +252,9 @@ class GnocchiCollector(collector.BaseCollector):
|
||||
# FIXME(peschk_l): In order not to miss any resource whose metrics may
|
||||
# contain measures after its destruction, we scan resources over three
|
||||
# collect periods.
|
||||
start -= timedelta(seconds=CONF.collect.period)
|
||||
end += timedelta(seconds=CONF.collect.period)
|
||||
delta = timedelta(seconds=CONF.collect.period)
|
||||
start = tzutils.substract_delta(start, delta)
|
||||
end = tzutils.add_delta(end, delta)
|
||||
query_parameters = self._generate_time_filter(start, end)
|
||||
|
||||
if project_id:
|
||||
|
||||
@@ -60,7 +60,7 @@ class TestTZUtils(unittest.TestCase):
|
||||
self.assertEqual(tzutils.dt_from_iso(tester, as_utc=True).isoformat(),
|
||||
tester_utc)
|
||||
|
||||
def _test_add_delta(self, obj, tzone):
|
||||
def _test_add_substract_delta(self, obj, tzone):
|
||||
delta = datetime.timedelta(seconds=3600)
|
||||
naive = obj.astimezone(tz.UTC).replace(tzinfo=None)
|
||||
|
||||
@@ -68,16 +68,20 @@ class TestTZUtils(unittest.TestCase):
|
||||
tzutils.add_delta(obj, delta).astimezone(tzone),
|
||||
(naive + delta).replace(tzinfo=tz.UTC).astimezone(tzone),
|
||||
)
|
||||
self.assertEqual(
|
||||
tzutils.substract_delta(obj, delta).astimezone(tzone),
|
||||
(naive - delta).replace(tzinfo=tz.UTC).astimezone(tzone),
|
||||
)
|
||||
|
||||
def test_add_delta_summertime(self):
|
||||
def test_add_substract_delta_summertime(self):
|
||||
tzone = tz.gettz('Europe/Paris')
|
||||
obj = datetime.datetime(2019, 3, 31, 1, tzinfo=tzone)
|
||||
self._test_add_delta(obj, tzone)
|
||||
self._test_add_substract_delta(obj, tzone)
|
||||
|
||||
def test_add_delta(self):
|
||||
def test_add_substract_delta(self):
|
||||
tzone = tz.gettz('Europe/Paris')
|
||||
obj = datetime.datetime(2019, 1, 1, tzinfo=tzone)
|
||||
self._test_add_delta(obj, tzone)
|
||||
self._test_add_substract_delta(obj, tzone)
|
||||
|
||||
def test_get_month_start_no_arg(self):
|
||||
naive_utc_now = timeutils.utcnow()
|
||||
|
||||
@@ -104,6 +104,11 @@ def add_delta(dt, delta):
|
||||
return utc_to_local(local_to_utc(dt, naive=True) + delta)
|
||||
|
||||
|
||||
def substract_delta(dt, delta):
|
||||
"""Substracts a timedelta from a datetime object."""
|
||||
return utc_to_local(local_to_utc(dt, naive=True) - delta)
|
||||
|
||||
|
||||
def get_month_start(dt=None, naive=False):
|
||||
"""Returns the start of the month in the local timezone.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user