Exemple #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'
     }])
Exemple #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
Exemple #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
         }])
Exemple #4
0
 def test_implemented_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertTrue(p.implemented())
Exemple #5
0
 def test_required_true(self):
     p = properties.Property({'Type': 'String', 'Required': True})
     self.assertTrue(p.required())
Exemple #6
0
 def test_list_string(self):
     p = properties.Property({'Type': 'List'})
     self.assertRaises(TypeError, p.validate_data, 'foo')
Exemple #7
0
 def test_int_bad(self):
     schema = {'Type': 'Integer'}
     p = properties.Property(schema)
     self.assertRaises(TypeError, p.validate_data, '3')
Exemple #8
0
 def test_list_dict(self):
     p = properties.Property({'Type': 'List'})
     self.assertRaises(TypeError, p.validate_data, {'foo': 'bar'})
Exemple #9
0
 def test_type(self):
     p = properties.Property({'Type': 'String'})
     self.assertEqual(p.type(), 'String')
Exemple #10
0
 def test_no_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertFalse(p.has_default())
Exemple #11
0
 def test_required_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertFalse(p.required())
Exemple #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, {})
Exemple #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})
Exemple #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})
Exemple #15
0
 def test_map_list(self):
     p = properties.Property({'Type': 'Map'})
     self.assertRaises(TypeError, p.validate_data, ['foo'])
Exemple #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'])
Exemple #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'])
Exemple #18
0
 def test_implemented_false(self):
     p = properties.Property({'Type': 'String', 'Implemented': False})
     self.assertFalse(p.implemented())
Exemple #19
0
 def test_implemented_true(self):
     p = properties.Property({'Type': 'String', 'Implemented': True})
     self.assertTrue(p.implemented())
Exemple #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')
Exemple #21
0
 def test_default(self):
     p = properties.Property({'Type': 'String', 'Default': 'wibble'})
     self.assertEqual(p.default(), 'wibble')
Exemple #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')
Exemple #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')
Exemple #24
0
 def test_list_good(self):
     p = properties.Property({'Type': 'List'})
     self.assertEqual(p.validate_data(['foo', 'bar']), ['foo', 'bar'])
Exemple #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')
Exemple #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])
Exemple #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)
Exemple #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'])
Exemple #29
0
 def test_required_false(self):
     p = properties.Property({'Type': 'String', 'Required': False})
     self.assertFalse(p.required())
Exemple #30
0
 def test_boolean_invalid(self):
     p = properties.Property({'Type': 'Boolean'})
     self.assertRaises(ValueError, p.validate_data, 'fish')