Use 3 decimals on timestamp calculation
Simplify timestamp_to_iso_millis_delta function because python api is using 3 decimals now. Added end_time on query params to make sure the tests can pass. Change-Id: I1e327bb03740e11792481d74b448668e99db65a7
This commit is contained in:
parent
d5738788a3
commit
da5a9c10ea
|
@ -14,7 +14,6 @@
|
|||
|
||||
# TODO(RMH): Check if ' should be added in the list of INVALID_CHARS.
|
||||
# TODO(RMH): test_create_metric_no_value, should return 422 if value not sent
|
||||
import datetime
|
||||
import time
|
||||
|
||||
from monasca_tempest_tests.tests.api import base
|
||||
|
@ -42,6 +41,8 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
value = data_utils.rand_name('value')
|
||||
timestamp = int(round(time.time() * 1000))
|
||||
time_iso = helpers.timestamp_to_iso(timestamp)
|
||||
end_timestamp = int(round((time.time() + 3600 * 24) * 1000))
|
||||
end_time_iso = helpers.timestamp_to_iso(end_timestamp)
|
||||
value_meta_key = data_utils.rand_name('value_meta_key')
|
||||
value_meta_value = data_utils.rand_name('value_meta_value')
|
||||
metric = helpers.create_metric(name=name,
|
||||
|
@ -53,7 +54,8 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
})
|
||||
resp, response_body = self.monasca_client.create_metrics(metric)
|
||||
self.assertEqual(204, resp.status)
|
||||
query_param = '?name=' + name + '&start_time=' + time_iso
|
||||
query_param = '?name=' + name + '&start_time=' + time_iso + \
|
||||
'&end_time=' + end_time_iso
|
||||
for i in xrange(constants.MAX_RETRIES):
|
||||
resp, response_body = self.monasca_client.\
|
||||
list_measurements(query_param)
|
||||
|
@ -81,6 +83,8 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
value = data_utils.rand_name('value')
|
||||
timestamp = int(round(time.time() * 1000))
|
||||
time_iso = helpers.timestamp_to_iso(timestamp)
|
||||
end_timestamp = int(round(timestamp + 3600 * 24 * 1000))
|
||||
end_time_iso = helpers.timestamp_to_iso(end_timestamp)
|
||||
value_meta_key1 = data_utils.rand_name('meta_key')
|
||||
value_meta_value1 = data_utils.rand_name('meta_value')
|
||||
value_meta_key2 = data_utils.rand_name('value_meta_key')
|
||||
|
@ -103,7 +107,8 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
]
|
||||
resp, response_body = self.monasca_client.create_metrics(metrics)
|
||||
self.assertEqual(204, resp.status)
|
||||
query_param = '?name=' + name + '&start_time=' + str(time_iso)
|
||||
query_param = '?name=' + name + '&start_time=' + str(time_iso) + \
|
||||
'&end_time=' + str(end_time_iso)
|
||||
for i in xrange(constants.MAX_RETRIES):
|
||||
resp, response_body = self.monasca_client.\
|
||||
list_measurements(query_param)
|
||||
|
@ -143,6 +148,8 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
name = data_utils.rand_name('name')
|
||||
timestamp = int(round(time.time() * 1000))
|
||||
time_iso = helpers.timestamp_to_iso(timestamp)
|
||||
end_timestamp = int(round(timestamp + 3600 * 24 * 1000))
|
||||
end_time_iso = helpers.timestamp_to_iso(end_timestamp)
|
||||
value_meta_key = data_utils.rand_name('value_meta_key')
|
||||
value_meta_value = data_utils.rand_name('value_meta_value')
|
||||
metric = helpers.create_metric(name=name,
|
||||
|
@ -153,7 +160,8 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
value_meta_key: value_meta_value})
|
||||
resp, response_body = self.monasca_client.create_metrics(metric)
|
||||
self.assertEqual(204, resp.status)
|
||||
query_param = '?name=' + str(name) + '&start_time=' + str(time_iso)
|
||||
query_param = '?name=' + str(name) + '&start_time=' + str(time_iso) \
|
||||
+ '&end_time=' + str(end_time_iso)
|
||||
for i in xrange(constants.MAX_RETRIES):
|
||||
resp, response_body = self.monasca_client.\
|
||||
list_measurements(query_param)
|
||||
|
@ -166,7 +174,8 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
if len(element['measurements']) > 0:
|
||||
measurement = element['measurements'][0]
|
||||
self._verify_list_measurements_measurement(
|
||||
measurement, metric, value_meta_key, value_meta_value)
|
||||
measurement, metric, value_meta_key,
|
||||
value_meta_value)
|
||||
return
|
||||
time.sleep(constants.RETRY_WAIT_SECS)
|
||||
if i == constants.MAX_RETRIES - 1:
|
||||
|
@ -384,14 +393,12 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
# Timestamps stored in influx sometimes are 1 millisecond different to
|
||||
# the value stored by the persister. Check if the timestamps are
|
||||
# equal in one millisecond range to pass the test.
|
||||
time_iso_millis = \
|
||||
self._timestamp_to_iso_millis_delta(test_metric['timestamp'], 0)
|
||||
time_iso_millis_plus = \
|
||||
self._timestamp_to_iso_millis_delta(test_metric['timestamp'],
|
||||
0.001)
|
||||
time_iso_millis_minus = \
|
||||
self._timestamp_to_iso_millis_delta(test_metric['timestamp'],
|
||||
-0.001)
|
||||
time_iso_millis = helpers.timestamp_to_iso_millis(
|
||||
test_metric['timestamp'] + 0)
|
||||
time_iso_millis_plus = helpers.timestamp_to_iso_millis(
|
||||
test_metric['timestamp'] + 1)
|
||||
time_iso_millis_minus = helpers.timestamp_to_iso_millis(
|
||||
test_metric['timestamp'] - 1)
|
||||
if str(measurement[0]) != time_iso_millis and str(measurement[0]) != \
|
||||
time_iso_millis_plus and str(measurement[0]) != \
|
||||
time_iso_millis_minus:
|
||||
|
@ -414,18 +421,3 @@ class TestMetrics(base.BaseMonascaTest):
|
|||
self.assertEqual(str(element['dimensions'][test_key]), test_value)
|
||||
if test_name is not None:
|
||||
self.assertEqual(str(element['name']), test_name)
|
||||
|
||||
def _timestamp_to_iso_millis_delta(self, timestamp, delta):
|
||||
time_utc = datetime.datetime.utcfromtimestamp(timestamp / 1000.0)
|
||||
time_iso_base = time_utc.strftime("%Y-%m-%dT%H:%M")
|
||||
time_iso_microsecond = time_utc.strftime(".%f")
|
||||
time_iso_second = time_utc.strftime("%S")
|
||||
if float(time_iso_microsecond[0:4]) == 0.0:
|
||||
time_iso_millis_delta = \
|
||||
time_iso_base + str(int(time_iso_second) + delta) + 'Z'
|
||||
else:
|
||||
millis_delta = str(int(time_iso_second[1]) + float(
|
||||
time_iso_microsecond[0:4]) + delta)
|
||||
time_iso_millis_delta = \
|
||||
time_iso_base + ':' + time_iso_second[0] + millis_delta + 'Z'
|
||||
return time_iso_millis_delta
|
||||
|
|
Loading…
Reference in New Issue