Handle bools-as-strings nm_controlled values
Fixes an issue where string values for nm_controlled were not converted to the appropriate boolean values. Closes-Bug: #1673878 Change-Id: I912ca2ef54d1d1f97e76b3922b7c2fecc77040ff
This commit is contained in:
parent
7a65a0de1f
commit
9033caa332
|
@ -245,7 +245,8 @@ class _BaseOpts(object):
|
|||
mtu = json.get('mtu', None)
|
||||
dhclient_args = json.get('dhclient_args')
|
||||
dns_servers = json.get('dns_servers')
|
||||
nm_controlled = json.get('nm_controlled')
|
||||
nm_controlled = strutils.bool_from_string(str(json.get('nm_controlled',
|
||||
False)))
|
||||
primary = strutils.bool_from_string(str(json.get('primary', False)))
|
||||
addresses = []
|
||||
routes = []
|
||||
|
|
|
@ -144,6 +144,46 @@ class TestInterface(base.TestCase):
|
|||
interface1 = objects.object_from_json(json.loads(data))
|
||||
self.assertEqual("--foobar", interface1.dhclient_args)
|
||||
|
||||
def test_from_json_nm_controlled_false(self):
|
||||
data = """{
|
||||
"type": "interface",
|
||||
"name": "em1",
|
||||
"nm_controlled": false
|
||||
}
|
||||
"""
|
||||
interface1 = objects.object_from_json(json.loads(data))
|
||||
self.assertFalse(interface1.nm_controlled)
|
||||
|
||||
def test_from_json_nm_controlled_true(self):
|
||||
data = """{
|
||||
"type": "interface",
|
||||
"name": "em1",
|
||||
"nm_controlled": true
|
||||
}
|
||||
"""
|
||||
interface1 = objects.object_from_json(json.loads(data))
|
||||
self.assertTrue(interface1.nm_controlled)
|
||||
|
||||
def test_from_json_nm_controlled_false_boolstr(self):
|
||||
data = """{
|
||||
"type": "interface",
|
||||
"name": "em1",
|
||||
"nm_controlled": "no"
|
||||
}
|
||||
"""
|
||||
interface1 = objects.object_from_json(json.loads(data))
|
||||
self.assertFalse(interface1.nm_controlled)
|
||||
|
||||
def test_from_json_nm_controlled_true_boolstr(self):
|
||||
data = """{
|
||||
"type": "interface",
|
||||
"name": "em1",
|
||||
"nm_controlled": "yes"
|
||||
}
|
||||
"""
|
||||
interface1 = objects.object_from_json(json.loads(data))
|
||||
self.assertTrue(interface1.nm_controlled)
|
||||
|
||||
def test_from_json_dns_servers(self):
|
||||
data = """{
|
||||
"type": "interface",
|
||||
|
|
Loading…
Reference in New Issue