summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2014-07-17 11:18:05 +0000
committerGerrit Code Review <review@openstack.org>2014-07-17 11:18:05 +0000
commite11b51cf3e97b8b60bf112a75c2b44837a8524e3 (patch)
treeaf26d78c68b0ebff65ad0fb8627768615e0b1178
parent5cac11d8b026c93debd80702505aec6214ee3bbf (diff)
parentee3082dd57af6500bc91f307338866f3ca7dc057 (diff)
downloadoslo-incubator-e11b51cf3e97b8b60bf112a75c2b44837a8524e3.tar.gz
Merge "Fix tests.unit.reports.* with python3.4"
-rw-r--r--openstack/common/report/views/json/generic.py8
-rw-r--r--openstack/common/report/views/text/generic.py4
-rw-r--r--openstack/common/report/views/xml/generic.py4
-rw-r--r--tests/unit/reports/test_guru_meditation_report.py10
-rw-r--r--tests/unit/reports/test_openstack_generators.py14
-rw-r--r--tests/unit/reports/test_views.py23
6 files changed, 32 insertions, 31 deletions
diff --git a/openstack/common/report/views/json/generic.py b/openstack/common/report/views/json/generic.py
index 539cafa7..c8fb5f23 100644
--- a/openstack/common/report/views/json/generic.py
+++ b/openstack/common/report/views/json/generic.py
@@ -56,10 +56,10 @@ class KeyValueView(object):
def __call__(self, model):
# this part deals with subviews that were already serialized
cpy = copy.deepcopy(model)
- for key, valstr in model.items():
- if getattr(valstr, '__is_json__', False):
- cpy[key] = json.loads(valstr)
+ for key in model.keys():
+ if getattr(model[key], '__is_json__', False):
+ cpy[key] = json.loads(model[key])
- res = utils.StringWithAttrs(json.dumps(cpy.data))
+ res = utils.StringWithAttrs(json.dumps(cpy.data, sort_keys=True))
res.__is_json__ = True
return res
diff --git a/openstack/common/report/views/text/generic.py b/openstack/common/report/views/text/generic.py
index c4f8a9f8..3b30a070 100644
--- a/openstack/common/report/views/text/generic.py
+++ b/openstack/common/report/views/text/generic.py
@@ -120,7 +120,7 @@ class KeyValueView(object):
if self.before_dict is not None:
res.insert(0, self.before_dict)
- for key in root:
+ for key in sorted(root):
res.extend(serialize(root[key], key, indent + 1))
elif (isinstance(root, col.Sequence) and
not isinstance(root, six.string_types)):
@@ -129,7 +129,7 @@ class KeyValueView(object):
if self.before_list is not None:
res.insert(0, self.before_list)
- for val in root:
+ for val in sorted(root, key=str):
res.extend(serialize(val, None, indent + 1))
else:
str_root = str(root)
diff --git a/openstack/common/report/views/xml/generic.py b/openstack/common/report/views/xml/generic.py
index 04188cd4..13b6a0ab 100644
--- a/openstack/common/report/views/xml/generic.py
+++ b/openstack/common/report/views/xml/generic.py
@@ -66,11 +66,11 @@ class KeyValueView(object):
res = ET.Element(rootkeyname)
if isinstance(rootmodel, col.Mapping):
- for key in rootmodel:
+ for key in sorted(rootmodel):
res.append(serialize(rootmodel[key], key))
elif (isinstance(rootmodel, col.Sequence)
and not isinstance(rootmodel, six.string_types)):
- for val in rootmodel:
+ for val in sorted(rootmodel, key=str):
res.append(serialize(val, 'item'))
elif ET.iselement(rootmodel):
res.append(rootmodel)
diff --git a/tests/unit/reports/test_guru_meditation_report.py b/tests/unit/reports/test_guru_meditation_report.py
index b349bc85..4e3352be 100644
--- a/tests/unit/reports/test_guru_meditation_report.py
+++ b/tests/unit/reports/test_guru_meditation_report.py
@@ -73,8 +73,8 @@ class TestGuruMeditationReport(utils.BaseTestCase):
'==== Package ====', # noqa
'========================================================================', # noqa
'product = Sharp Cheddar',
- 'version = 1.0.0',
'vendor = Cheese Shoppe',
+ 'version = 1.0.0',
'========================================================================', # noqa
'==== Threads ====', # noqa
'========================================================================'] # noqa
@@ -130,15 +130,15 @@ class TestGuruMeditationReport(utils.BaseTestCase):
target_lst = ['========================================================================', # noqa
'==== Cheese Types ====', # noqa
'========================================================================', # noqa
- 'swiss = ',
- ' with holes',
- ' with lots of holes',
'american = ',
' orange',
' yellow',
'cheddar = ',
+ ' mild',
' sharp',
- ' mild']
+ 'swiss = ',
+ ' with holes',
+ ' with lots of holes']
target_str = '\n'.join(target_lst)
self.assertIn(target_str, report_lines)
diff --git a/tests/unit/reports/test_openstack_generators.py b/tests/unit/reports/test_openstack_generators.py
index bfd6e847..6de4d0d0 100644
--- a/tests/unit/reports/test_openstack_generators.py
+++ b/tests/unit/reports/test_openstack_generators.py
@@ -75,13 +75,13 @@ class TestOpenstackGenerators(utils.BaseTestCase):
model = os_cgen.ConfigReportGenerator(conf)()
model.set_current_view_type('text')
- target_str = ('\ndefault: \n'
- ' crackers = triscuit\n'
- '\n'
- 'cheese: \n'
+ target_str = ('\ncheese: \n'
' from_cow = True\n'
+ ' name = cheddar\n'
' sharpness = 1\n'
- ' name = cheddar')
+ '\n'
+ 'default: \n'
+ ' crackers = triscuit')
self.assertEqual(target_str, str(model))
def test_package_report_generator(self):
@@ -99,6 +99,6 @@ class TestOpenstackGenerators(utils.BaseTestCase):
model.set_current_view_type('text')
target_str = ('product = Sharp Cheddar\n'
- 'version = 1.0.0\n'
- 'vendor = Cheese Shoppe')
+ 'vendor = Cheese Shoppe\n'
+ 'version = 1.0.0')
self.assertEqual(target_str, str(model))
diff --git a/tests/unit/reports/test_views.py b/tests/unit/reports/test_views.py
index 7b8362c3..245cf0e0 100644
--- a/tests/unit/reports/test_views.py
+++ b/tests/unit/reports/test_views.py
@@ -101,8 +101,8 @@ class TestGenericXMLView(utils.BaseTestCase):
self.model['dt'] = {'a': 1, 'b': 2}
target_str = ('<model>'
- '<int>1</int>'
'<dt><a>1</a><b>2</b></dt>'
+ '<int>1</int>'
'<string>value</string></model>')
self.assertEqual(target_str, str(self.model))
@@ -119,9 +119,9 @@ class TestGenericXMLView(utils.BaseTestCase):
self.model['dt'] = {'a': 1, 'b': [2, 3]}
target_str = ('<model>'
- '<int>1</int>'
'<dt><a>1</a>'
'<b><item>2</item><item>3</item></b></dt>'
+ '<int>1</int>'
'<string>value</string></model>')
self.assertEqual(target_str, str(self.model))
@@ -131,7 +131,7 @@ class TestGenericXMLView(utils.BaseTestCase):
target_str = ('<model>'
'<int>1</int>'
'<lt><item>1</item>'
- '<item><c>3</c><b>2</b></item></lt>'
+ '<item><b>2</b><c>3</c></item></lt>'
'<string>value</string></model>')
self.assertEqual(target_str, str(self.model))
@@ -178,8 +178,8 @@ class TestGenericJSONViews(utils.BaseTestCase):
self.model['dt'] = {'a': 1, 'b': 2}
target_str = ('{'
- '"int": 1, '
'"dt": {"a": 1, "b": 2}, '
+ '"int": 1, '
'"string": "value"'
'}')
self.assertEqual(target_str, str(self.model))
@@ -198,8 +198,8 @@ class TestGenericJSONViews(utils.BaseTestCase):
self.model['dt'] = {'a': 1, 'b': [2, 3]}
target_str = ('{'
- '"int": 1, '
'"dt": {"a": 1, "b": [2, 3]}, '
+ '"int": 1, '
'"string": "value"'
'}')
self.assertEqual(target_str, str(self.model))
@@ -209,7 +209,7 @@ class TestGenericJSONViews(utils.BaseTestCase):
target_str = ('{'
'"int": 1, '
- '"lt": [1, {"c": 3, "b": 2}], '
+ '"lt": [1, {"b": 2, "c": 3}], '
'"string": "value"'
'}')
self.assertEqual(target_str, str(self.model))
@@ -278,10 +278,10 @@ class TestGenericTextViews(utils.BaseTestCase):
def test_dict_serialization(self):
self.model['dt'] = {'a': 1, 'b': 2}
- target_str = ('int = 1\n'
- 'dt = \n'
+ target_str = ('dt = \n'
' a = 1\n'
' b = 2\n'
+ 'int = 1\n'
'string = value')
self.assertEqual(target_str, str(self.model))
@@ -298,13 +298,14 @@ class TestGenericTextViews(utils.BaseTestCase):
def test_list_in_dict_serialization(self):
self.model['dt'] = {'a': 1, 'b': [2, 3]}
- target_str = ('int = 1\n'
- 'dt = \n'
+ target_str = ('dt = \n'
' a = 1\n'
' b = \n'
' 2\n'
' 3\n'
+ 'int = 1\n'
'string = value')
+
self.assertEqual(target_str, str(self.model))
def test_dict_in_list_serialization(self):
@@ -314,8 +315,8 @@ class TestGenericTextViews(utils.BaseTestCase):
'lt = \n'
' 1\n'
' [dict]\n'
- ' c = 3\n'
' b = 2\n'
+ ' c = 3\n'
'string = value')
self.assertEqual(target_str, str(self.model))