Ejemplo n.º 1
0
 def test_list_schema_bad_data(self):
     map_schema = {'valid': {'Type': 'Boolean'}}
     list_schema = {'Type': 'Map', 'Schema': map_schema}
     p = properties.Property({'Type': 'List', 'Schema': list_schema})
     self.assertRaises(ValueError, p.validate_data, [{
         'valid': 'True'
     }, {
         'valid': 'fish'
     }])
Ejemplo n.º 2
0
 def get_props(props, key):
     props = props.get(key)
     if props.schema.schema is not None:
         keys = list(props.schema.schema)
         schemata = dict((k, props.schema.schema[k]) for k in keys)
         props = dict((k, properties.Property(s, k))
                      for k, s in schemata.items())
         if set(props.keys()) == set('*'):
             return get_props(props, '*')
     return props
Ejemplo n.º 3
0
 def test_list_schema_good(self):
     map_schema = {'valid': {'Type': 'Boolean'}}
     list_schema = {'Type': 'Map', 'Schema': map_schema}
     p = properties.Property({'Type': 'List', 'Schema': list_schema})
     self.assertEqual(
         p.validate_data([{
             'valid': 'TRUE'
         }, {
             'valid': 'False'
         }]), [{
             'valid': True
         }, {
             'valid': False
         }])
Ejemplo n.º 4
0
 def test_implemented_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertTrue(p.implemented())
Ejemplo n.º 5
0
 def test_required_true(self):
     p = properties.Property({'Type': 'String', 'Required': True})
     self.assertTrue(p.required())
Ejemplo n.º 6
0
 def test_list_string(self):
     p = properties.Property({'Type': 'List'})
     self.assertRaises(TypeError, p.validate_data, 'foo')
Ejemplo n.º 7
0
 def test_int_bad(self):
     schema = {'Type': 'Integer'}
     p = properties.Property(schema)
     self.assertRaises(TypeError, p.validate_data, '3')
Ejemplo n.º 8
0
 def test_list_dict(self):
     p = properties.Property({'Type': 'List'})
     self.assertRaises(TypeError, p.validate_data, {'foo': 'bar'})
Ejemplo n.º 9
0
 def test_type(self):
     p = properties.Property({'Type': 'String'})
     self.assertEqual(p.type(), 'String')
Ejemplo n.º 10
0
 def test_no_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertFalse(p.has_default())
Ejemplo n.º 11
0
 def test_required_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertFalse(p.required())
Ejemplo n.º 12
0
 def test_map_schema_missing_required_data(self):
     map_schema = {'valid': {'Type': 'Boolean', 'Required': True}}
     p = properties.Property({'Type': 'Map', 'Schema': map_schema})
     self.assertRaises(ValueError, p.validate_data, {})
Ejemplo n.º 13
0
 def test_map_schema_missing_data(self):
     map_schema = {'valid': {'Type': 'Boolean'}}
     p = properties.Property({'Type': 'Map', 'Schema': map_schema})
     self.assertEqual(p.validate_data({}), {'valid': None})
Ejemplo n.º 14
0
 def test_map_schema_good(self):
     map_schema = {'valid': {'Type': 'Boolean'}}
     p = properties.Property({'Type': 'Map', 'Schema': map_schema})
     self.assertEqual(p.validate_data({'valid': 'TRUE'}), {'valid': True})
Ejemplo n.º 15
0
 def test_map_list(self):
     p = properties.Property({'Type': 'Map'})
     self.assertRaises(TypeError, p.validate_data, ['foo'])
Ejemplo n.º 16
0
 def test_list_value_list_good(self):
     schema = {'Type': 'List', 'AllowedValues': ['foo', 'bar', 'baz']}
     p = properties.Property(schema)
     self.assertEqual(p.validate_data(['bar', 'foo']), ['bar', 'foo'])
Ejemplo n.º 17
0
 def test_list_value_list_bad(self):
     schema = {'Type': 'List', 'AllowedValues': ['foo', 'bar', 'baz']}
     p = properties.Property(schema)
     self.assertRaises(ValueError, p.validate_data, ['foo', 'wibble'])
Ejemplo n.º 18
0
 def test_implemented_false(self):
     p = properties.Property({'Type': 'String', 'Implemented': False})
     self.assertFalse(p.implemented())
Ejemplo n.º 19
0
 def test_implemented_true(self):
     p = properties.Property({'Type': 'String', 'Implemented': True})
     self.assertTrue(p.implemented())
Ejemplo n.º 20
0
 def test_string_pattern_bad_suffix(self):
     schema = {'Type': 'String', 'AllowedPattern': '[a-z]*'}
     p = properties.Property(schema)
     self.assertRaises(ValueError, p.validate_data, 'foo1')
Ejemplo n.º 21
0
 def test_default(self):
     p = properties.Property({'Type': 'String', 'Default': 'wibble'})
     self.assertEqual(p.default(), 'wibble')
Ejemplo n.º 22
0
 def test_string_value_list_bad(self):
     schema = {'Type': 'String', 'AllowedValues': ['foo', 'bar', 'baz']}
     p = properties.Property(schema)
     self.assertRaises(ValueError, p.validate_data, 'blarg')
Ejemplo n.º 23
0
 def test_string_pattern_good(self):
     schema = {'Type': 'String', 'AllowedPattern': '[a-z]*'}
     p = properties.Property(schema)
     self.assertEqual(p.validate_data('foo'), 'foo')
Ejemplo n.º 24
0
 def test_list_good(self):
     p = properties.Property({'Type': 'List'})
     self.assertEqual(p.validate_data(['foo', 'bar']), ['foo', 'bar'])
Ejemplo n.º 25
0
 def test_string_value_list_good(self):
     schema = {'Type': 'String', 'AllowedValues': ['foo', 'bar', 'baz']}
     p = properties.Property(schema)
     self.assertEqual(p.validate_data('bar'), 'bar')
Ejemplo n.º 26
0
 def test_list_schema_int_good(self):
     list_schema = {'Type': 'Integer'}
     p = properties.Property({'Type': 'List', 'Schema': list_schema})
     self.assertEqual(p.validate_data([1, 2, 3]), [1, 2, 3])
Ejemplo n.º 27
0
 def test_int_good(self):
     schema = {'Type': 'Integer', 'MinValue': 3, 'MaxValue': 3}
     p = properties.Property(schema)
     self.assertEqual(p.validate_data(3), 3)
Ejemplo n.º 28
0
 def test_list_schema_int_bad_data(self):
     list_schema = {'Type': 'Integer'}
     p = properties.Property({'Type': 'List', 'Schema': list_schema})
     self.assertRaises(TypeError, p.validate_data, [42, 'fish'])
Ejemplo n.º 29
0
 def test_required_false(self):
     p = properties.Property({'Type': 'String', 'Required': False})
     self.assertFalse(p.required())
Ejemplo n.º 30
0
 def test_boolean_invalid(self):
     p = properties.Property({'Type': 'Boolean'})
     self.assertRaises(ValueError, p.validate_data, 'fish')