Correction of transformation for text_list

* added removing of space in text_list
* added test for merge_attributes

Change-Id: I5582878fc7c524551593abf21dfd4ea45cd430c9
Closes-bug: 1602607
(cherry picked from commit fdd2a62264)
This commit is contained in:
Anastasiya 2016-07-15 10:24:11 +03:00 committed by Anastasia Tolochkova
parent d4db5ba78c
commit b93ebedc49
2 changed files with 34 additions and 1 deletions

View File

@ -20,6 +20,7 @@ import six
from nailgun import consts
from nailgun.objects.serializers import network_configuration
from .. import upgrade
from . import base as base_tests
from ..objects import adapters
from ..objects import relations
@ -42,6 +43,36 @@ class TestUpgradeHelperCloneCluster(base_tests.BaseCloneClusterTest):
"ip_ranges": [["192.168.42.5", "192.168.42.11"]],
}
def test_merge_attributes(self):
src_editable_attrs = {
"test":
{"metadata": "src_fake",
"key":
{"type": "text",
"value": "fake1, fake2,fake3 , fake4"},
"src_key": "src_data"
},
"repo_setup": "src_data"
}
new_editable_attrs = {
"test":
{"metadata": "new_fake",
"key":
{"type": "text_list",
"value": "fake"},
"new_key": "new_data"
},
"repo_setup": "new_data"
}
result = upgrade.merge_attributes(
src_editable_attrs, new_editable_attrs
)
new_editable_attrs["test"]["key"]["value"] = [
"fake1", "fake2", "fake3", "fake4"
]
self.assertEqual(result, new_editable_attrs)
def test_create_cluster_clone(self):
new_cluster = self.helper.create_cluster_clone(self.src_cluster,
self.data)

View File

@ -47,7 +47,9 @@ def merge_attributes(a, b):
# to 'text_list' (a list of strings of IP-addresses).
if a_values[key]['type'] == 'text' and \
values['type'] == 'text_list':
values["value"] = values['value'].split(',')
values["value"] = [
value.strip() for value in values['value'].split(',')
]
return attrs