Merge "Use unicode literals in test_metrics"

This commit is contained in:
Zuul 2019-07-10 18:54:34 +00:00 committed by Gerrit Code Review
commit cc0581fcab
1 changed files with 76 additions and 81 deletions

View File

@ -18,7 +18,6 @@
import time
from six.moves import urllib_parse as urlparse
from six import PY3
from six import text_type
from tempest.lib.common.utils import data_utils
@ -34,15 +33,15 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type=["gate", "smoke"])
def test_create_metric(self):
name = data_utils.rand_name('name')
key = data_utils.rand_name('key')
value = data_utils.rand_name('value')
name = data_utils.rand_name(u'name')
key = data_utils.rand_name(u'key')
value = data_utils.rand_name(u'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')
value_meta_key = data_utils.rand_name(u'value_meta_key')
value_meta_value = data_utils.rand_name(u'value_meta_value')
metric = helpers.create_metric(name=name,
dimensions={key: value},
timestamp=timestamp,
@ -61,7 +60,7 @@ class TestMetrics(base.BaseMonascaTest):
elements = response_body['elements']
for element in elements:
# check if metric is there and dimension info already available
if (str(element['name']) == name and len(element['dimensions']) > 0):
if element['name'] == name and len(element['dimensions']) > 0:
self._verify_list_measurements_element(element, key, value)
measurement = element['measurements'][0]
self._verify_list_measurements_measurement(
@ -77,20 +76,15 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
def test_create_metric_with_multibyte_character(self):
name = data_utils.rand_name('') if PY3 \
else data_utils.rand_name('').decode('utf8')
key = data_utils.rand_name('') if PY3 \
else data_utils.rand_name('').decode('utf8')
value = data_utils.rand_name('') if PY3 \
else data_utils.rand_name('').decode('utf8')
name = data_utils.rand_name(u'')
key = data_utils.rand_name(u'')
value = data_utils.rand_name(u'')
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_') if PY3 \
else data_utils.rand_name('value_meta_').decode('utf8')
value_meta_value = data_utils.rand_name('value_meta_') if PY3 \
else data_utils.rand_name('value_meta_').decode('utf8')
value_meta_key = data_utils.rand_name(u'value_meta_')
value_meta_value = data_utils.rand_name(u'value_meta_')
metric = helpers.create_metric(name=name,
dimensions={key: value},
timestamp=timestamp,
@ -124,17 +118,17 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
def test_create_metrics(self):
name = data_utils.rand_name('name')
key = data_utils.rand_name('key')
value = data_utils.rand_name('value')
name = data_utils.rand_name(u'name')
key = data_utils.rand_name(u'key')
value = data_utils.rand_name(u'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')
value_meta_value2 = data_utils.rand_name('value_meta_value')
value_meta_key1 = data_utils.rand_name(u'meta_key')
value_meta_value1 = data_utils.rand_name(u'meta_value')
value_meta_key2 = data_utils.rand_name(u'value_meta_key')
value_meta_value2 = data_utils.rand_name(u'value_meta_value')
metrics = [
helpers.create_metric(name=name,
dimensions={key: value},
@ -161,8 +155,8 @@ class TestMetrics(base.BaseMonascaTest):
self.assertEqual(200, resp.status)
elements = response_body['elements']
for element in elements:
if str(element['name']) == name \
and len(element['measurements']) == 2:
if (element['name'] == name and
len(element['measurements']) == 2):
self._verify_list_measurements_element(element, key, value)
first_measurement = element['measurements'][0]
second_measurement = element['measurements'][1]
@ -200,9 +194,9 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
@decorators.attr(type=['negative'])
def test_create_metric_with_empty_value_in_dimensions(self):
name = data_utils.rand_name('name')
name = data_utils.rand_name(u'name')
metric = helpers.create_metric(name=name,
dimensions={'key': ''})
dimensions={u'key': ''})
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
metric)
@ -210,22 +204,22 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
@decorators.attr(type=['negative'])
def test_create_metric_with_empty_key_in_dimensions(self):
name = data_utils.rand_name('name')
name = data_utils.rand_name(u'name')
metric = helpers.create_metric(name=name,
dimensions={'': 'value'})
dimensions={'': u'value'})
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
metric)
@decorators.attr(type='gate')
def test_create_metric_with_no_dimensions(self):
name = data_utils.rand_name('name')
name = data_utils.rand_name(u'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')
value_meta_key = data_utils.rand_name(u'value_meta_key')
value_meta_value = data_utils.rand_name(u'value_meta_value')
metric = helpers.create_metric(name=name,
dimensions=None,
timestamp=timestamp,
@ -242,7 +236,7 @@ class TestMetrics(base.BaseMonascaTest):
self.assertEqual(200, resp.status)
elements = response_body['elements']
for element in elements:
if str(element['name']) == name:
if element['name'] == name:
self._verify_list_measurements_element(
element, test_key=None, test_value=None)
if len(element['measurements']) > 0:
@ -261,9 +255,9 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
def test_create_metric_with_colon_in_dimension_value(self):
name = data_utils.rand_name('name')
key = 'url'
value = 'http://localhost:8070/v2.0'
name = data_utils.rand_name(u'name')
key = u'url'
value = u'http://localhost:8070/v2.0'
timestamp = int(round(time.time() * 1000))
time_iso = helpers.timestamp_to_iso(timestamp)
end_timestamp = int(round((time.time() + 3600 * 24) * 1000))
@ -281,7 +275,7 @@ class TestMetrics(base.BaseMonascaTest):
self.assertEqual(200, resp.status)
elements = response_body['elements']
for element in elements:
if str(element['name']) == name:
if element['name'] == name:
self._verify_list_measurements_element(element, key, value)
measurement = element['measurements'][0]
self._verify_list_measurements_measurement(
@ -317,7 +311,7 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
@decorators.attr(type=['negative'])
def test_create_metric_with_name_exceeds_max_length(self):
long_name = "x" * (constants.MAX_METRIC_NAME_LENGTH + 1)
long_name = u"x" * (constants.MAX_METRIC_NAME_LENGTH + 1)
metric = helpers.create_metric(long_name)
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
@ -336,12 +330,13 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type=['negative'])
def test_create_metric_with_invalid_chars_in_dimensions(self):
for invalid_char in constants.INVALID_DIMENSION_CHARS:
metric = helpers.create_metric('name-1', {'key-1': invalid_char})
metric = helpers.create_metric(u'name-1', {u'key-1': invalid_char})
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
metric)
for invalid_char in constants.INVALID_DIMENSION_CHARS:
metric = helpers.create_metric('name-1', {invalid_char: 'value-1'})
metric = helpers.create_metric(u'name-1',
{invalid_char: u'value-1'})
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
metric)
@ -349,8 +344,8 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
@decorators.attr(type=['negative'])
def test_create_metric_dimension_key_exceeds_max_length(self):
long_key = "x" * (constants.MAX_DIMENSION_KEY_LENGTH + 1)
metric = helpers.create_metric('name-1', {long_key: 'value-1'})
long_key = u"x" * (constants.MAX_DIMENSION_KEY_LENGTH + 1)
metric = helpers.create_metric(u'name-1', {long_key: u'value-1'})
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
metric)
@ -358,8 +353,8 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
@decorators.attr(type=['negative'])
def test_create_metric_dimension_value_exceeds_max_length(self):
long_value = "x" * (constants.MAX_DIMENSION_VALUE_LENGTH + 1)
metric = helpers.create_metric('name-1', {'key-1': long_value})
long_value = u"x" * (constants.MAX_DIMENSION_VALUE_LENGTH + 1)
metric = helpers.create_metric(u'name-1', {u'key-1': long_value})
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
metric)
@ -367,9 +362,9 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
@decorators.attr(type=['negative'])
def test_create_metric_with_value_meta_name_exceeds_max_length(self):
long_value_meta_name = "x" * (constants.MAX_VALUE_META_NAME_LENGTH + 1)
value_meta_dict = {long_value_meta_name: "value_meta_value"}
metric = helpers.create_metric(name='name', value_meta=value_meta_dict)
long_value_meta_name = u"x" * (constants.MAX_VALUE_META_NAME_LENGTH + 1)
value_meta_dict = {long_value_meta_name: u"value_meta_value"}
metric = helpers.create_metric(name=u'name', value_meta=value_meta_dict)
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
metric)
@ -377,10 +372,10 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
@decorators.attr(type=['negative'])
def test_create_metric_with_value_meta_exceeds_max_length(self):
value_meta_name = "x"
long_value_meta_value = "y" * constants.MAX_VALUE_META_TOTAL_LENGTH
value_meta_name = u"x"
long_value_meta_value = u"y" * constants.MAX_VALUE_META_TOTAL_LENGTH
value_meta_dict = {value_meta_name: long_value_meta_value}
metric = helpers.create_metric(name='name', value_meta=value_meta_dict)
metric = helpers.create_metric(name=u'name', value_meta=value_meta_dict)
self.assertRaises(exceptions.UnprocessableEntity,
self.monasca_client.create_metrics,
metric)
@ -398,9 +393,9 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
def test_list_metrics_with_dimensions(self):
name = data_utils.rand_name('name')
key = data_utils.rand_name('key')
value = data_utils.rand_name('value')
name = data_utils.rand_name(u'name')
key = data_utils.rand_name(u'key')
value = data_utils.rand_name(u'value')
metric = helpers.create_metric(name=name, dimensions={key: value})
resp, response_body = self.monasca_client.create_metrics(metric)
self.assertEqual(204, resp.status)
@ -410,7 +405,7 @@ class TestMetrics(base.BaseMonascaTest):
self.assertEqual(200, resp.status)
elements = response_body['elements']
for element in elements:
if str(element['dimensions'][key]) == value:
if element['dimensions'][key] == value:
self._verify_list_metrics_element(element, test_name=name)
return
time.sleep(constants.RETRY_WAIT_SECS)
@ -465,9 +460,9 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
def test_list_metrics_with_name(self):
name = data_utils.rand_name('name')
key = data_utils.rand_name('key')
value = data_utils.rand_name('value')
name = data_utils.rand_name(u'name')
key = data_utils.rand_name(u'key')
value = data_utils.rand_name(u'value')
metric = helpers.create_metric(name=name,
dimensions={key: value})
resp, response_body = self.monasca_client.create_metrics(metric)
@ -478,7 +473,7 @@ class TestMetrics(base.BaseMonascaTest):
self.assertEqual(200, resp.status)
elements = response_body['elements']
for element in elements:
if str(element['name']) == name:
if element['name'] == name:
self._verify_list_metrics_element(element, test_key=key,
test_value=value)
return
@ -492,11 +487,11 @@ class TestMetrics(base.BaseMonascaTest):
@decorators.attr(type='gate')
def test_list_metrics_with_project(self):
name = data_utils.rand_name('name')
key = data_utils.rand_name('key')
value = data_utils.rand_name('value')
name = data_utils.rand_name(u'name')
key = data_utils.rand_name(u'key')
value = data_utils.rand_name(u'value')
project = self.projects_client.create_project(
name=data_utils.rand_name('test_project'))['project']
name=data_utils.rand_name(u'test_project'))['project']
# Delete the project at the end of the test
self.addCleanup(self.projects_client.delete_project, project['id'])
metric = helpers.create_metric(name=name,
@ -510,7 +505,7 @@ class TestMetrics(base.BaseMonascaTest):
self.assertEqual(200, resp.status)
elements = response_body['elements']
for element in elements:
if str(element['name']) == name:
if element['name'] == name:
self._verify_list_metrics_element(element, test_key=key,
test_value=value)
return
@ -530,13 +525,13 @@ class TestMetrics(base.BaseMonascaTest):
metrics = [
helpers.create_metric(name=name, dimensions={
key1: 'value-1', key2: 'value-1'}),
key1: u'value-1', key2: u'value-1'}),
helpers.create_metric(name=name, dimensions={
key1: 'value-2', key2: 'value-2'}),
key1: u'value-2', key2: u'value-2'}),
helpers.create_metric(name=name, dimensions={
key1: 'value-3', key2: 'value-3'}),
key1: u'value-3', key2: u'value-3'}),
helpers.create_metric(name=name, dimensions={
key1: 'value-4', key2: 'value-4'})
key1: u'value-4', key2: u'value-4'})
]
self.monasca_client.create_metrics(metrics)
query_param = '?name=' + name
@ -629,15 +624,15 @@ class TestMetrics(base.BaseMonascaTest):
self.assertEqual(set(element), set(['dimensions', 'id', 'name']))
self.assertTrue(str(element['id']) is not None)
if test_key is not None and test_value is not None:
self.assertEqual(str(element['dimensions'][test_key]), test_value)
self.assertEqual(element['dimensions'][test_key], test_value)
if test_name is not None:
self.assertEqual(str(element['name']), test_name)
self.assertEqual(element['name'], test_name)
@decorators.attr(type='gate')
def test_list_metrics_with_time_args(self):
name = data_utils.rand_name('name')
key = data_utils.rand_name('key')
value_org = data_utils.rand_name('value')
name = data_utils.rand_name(u'name')
key = data_utils.rand_name(u'key')
value_org = data_utils.rand_name(u'value')
now = int(round(time.time() * 1000))
#
@ -661,7 +656,7 @@ class TestMetrics(base.BaseMonascaTest):
dimensions = elements[0]
dimension = dimensions['dimensions']
value = dimension[text_type(key)]
self.assertEqual(value_org, str(value))
self.assertEqual(value_org, value)
break
else:
time.sleep(constants.RETRY_WAIT_SECS)
@ -705,15 +700,15 @@ class TestMetrics(base.BaseMonascaTest):
self.fail(error_msg)
def _create_metrics_with_different_dimensions(self, same_name=True):
name1 = data_utils.rand_name('name1')
name2 = name1 if same_name else data_utils.rand_name('name2')
name3 = name1 if same_name else data_utils.rand_name('name3')
key_service = data_utils.rand_name('service')
values = [data_utils.rand_name('value1'),
data_utils.rand_name('value2')]
name1 = data_utils.rand_name(u'name1')
name2 = name1 if same_name else data_utils.rand_name(u'name2')
name3 = name1 if same_name else data_utils.rand_name(u'name3')
key_service = data_utils.rand_name(u'service')
values = [data_utils.rand_name(u'value1'),
data_utils.rand_name(u'value2')]
metrics = [helpers.create_metric(name1, {key_service: values[0]}),
helpers.create_metric(name2, {key_service: values[1]}),
helpers.create_metric(name3, {'key3': 'value3'})]
helpers.create_metric(name3, {u'key3': u'value3'})]
resp, response_body = self.monasca_client.create_metrics(metrics)
self.assertEqual(204, resp.status)
return metrics, name1, key_service, values