Return parsed list value in CommaDelimitedList
What's `Ref' got from `CommaDelimitedList' parameter is unicode string, so failed validation in properties. The solution here is add list value in `CommaDelimitedList'. Fixes bug #1226483 Change-Id: I5534ff6027d6f5be3a844778d025b73ab9500796
This commit is contained in:
parent
6e7fa3266a
commit
7f81f29a97
|
@ -249,6 +249,9 @@ class CommaDelimitedListParam(Parameter, collections.Sequence):
|
|||
raise ValueError(message % str(err))
|
||||
return value
|
||||
|
||||
def value(self):
|
||||
return self.parsed
|
||||
|
||||
def __len__(self):
|
||||
'''Return the length of the list.'''
|
||||
return len(self.parsed)
|
||||
|
|
|
@ -259,7 +259,13 @@ class ParameterTest(testtools.TestCase):
|
|||
schema = {'Type': 'CommaDelimitedList',
|
||||
'AllowedValues': ['foo', 'bar', 'baz']}
|
||||
p = self.new_parameter('p', schema, 'baz,foo,bar')
|
||||
self.assertEqual(p.value(), 'baz,foo,bar')
|
||||
self.assertEqual(p.value(), 'baz,foo,bar'.split(','))
|
||||
schema['Default'] = []
|
||||
p = self.new_parameter('p', schema)
|
||||
self.assertEqual(p.value(), [])
|
||||
schema['Default'] = 'baz,foo,bar'
|
||||
p = self.new_parameter('p', schema)
|
||||
self.assertEqual(p.value(), 'baz,foo,bar'.split(','))
|
||||
|
||||
def test_list_value_list_bad(self):
|
||||
schema = {'Type': 'CommaDelimitedList',
|
||||
|
|
Loading…
Reference in New Issue