コード例 #1
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}])
コード例 #2
0
 def test_boolean_true(self):
     p = properties.Property({'Type': 'Boolean'})
     self.assertEqual(p.validate_data('True'), True)
     self.assertEqual(p.validate_data('true'), True)
     self.assertEqual(p.validate_data(True), True)
コード例 #3
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')
コード例 #4
0
 def test_string_pattern_good(self):
     schema = {'Type': 'String',
               'AllowedPattern': '[a-z]*'}
     p = properties.Property(schema)
     self.assertEqual(p.validate_data('foo'), 'foo')
コード例 #5
0
 def test_default(self):
     p = properties.Property({'Type': 'String', 'Default': 'wibble'})
     self.assertEqual(p.default(), 'wibble')
コード例 #6
0
 def test_implemented_true(self):
     p = properties.Property({'Type': 'String', 'Implemented': True})
     self.assertTrue(p.implemented())
コード例 #7
0
 def test_implemented_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertTrue(p.implemented())
コード例 #8
0
 def test_required_false(self):
     p = properties.Property({'Type': 'String', 'Required': False})
     self.assertFalse(p.required())
コード例 #9
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'])
コード例 #10
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'])
コード例 #11
0
 def test_list_dict(self):
     p = properties.Property({'Type': 'List'})
     self.assertRaises(TypeError, p.validate_data, {'foo': 'bar'})
コード例 #12
0
 def test_list_good(self):
     p = properties.Property({'Type': 'List'})
     self.assertEqual(p.validate_data(['foo', 'bar']), ['foo', 'bar'])
コード例 #13
0
 def test_list_string(self):
     p = properties.Property({'Type': 'List'})
     self.assertRaises(TypeError, p.validate_data, 'foo')
コード例 #14
0
 def test_boolean_invalid(self):
     p = properties.Property({'Type': 'Boolean'})
     self.assertRaises(ValueError, p.validate_data, 'fish')
コード例 #15
0
 def test_boolean_false(self):
     p = properties.Property({'Type': 'Boolean'})
     self.assertEqual(p.validate_data('False'), False)
     self.assertEqual(p.validate_data('false'), False)
     self.assertEqual(p.validate_data(False), False)
コード例 #16
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])
コード例 #17
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'])
コード例 #18
0
 def test_map_list(self):
     p = properties.Property({'Type': 'Map'})
     self.assertRaises(TypeError, p.validate_data, ['foo'])
コード例 #19
0
 def test_required_true(self):
     p = properties.Property({'Type': 'String', 'Required': True})
     self.assertTrue(p.required())
コード例 #20
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})
コード例 #21
0
 def test_implemented_false(self):
     p = properties.Property({'Type': 'String', 'Implemented': False})
     self.assertFalse(p.implemented())
コード例 #22
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})
コード例 #23
0
 def test_no_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertFalse(p.has_default())
コード例 #24
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, {})
コード例 #25
0
 def test_type(self):
     p = properties.Property({'Type': 'String'})
     self.assertEqual(p.type(), 'String')
コード例 #26
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'}])
コード例 #27
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')
コード例 #28
0
 def test_required_default(self):
     p = properties.Property({'Type': 'String'})
     self.assertFalse(p.required())
コード例 #29
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')
コード例 #30
0
 def test_number_high(self):
     schema = {'Type': 'Number',
               'MaxValue': '2'}
     p = properties.Property(schema)
     self.assertRaises(ValueError, p.validate_data, '3')