Example #1
0
 def test_validate_list_max(self):
     report = validate_shape(self.model.get_shape('TestShape'), [
         {"foo": ""},
         {"foo": ""},
     ])
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_range")
Example #2
0
 def test_validate_max(self):
     report = validate_shape(self.model.get_shape('TestShape'), {
         "a": "b",
         "c": "d",
     })
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_range")
Example #3
0
 def test_validate_child_child_type_check(self):
     report = validate_shape(
         self.model.get_shape('TestShape'),
         [{"foo": 1}]
     )
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_type")
     self.assertEqual(report[0].field, "[0].foo")
Example #4
0
 def test_validate_structure_unknown_param(self):
     report = validate_shape(
         self.model.get_shape('TestShape'),
         {"foo": "a", "bar": "a"}
     )
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "unexpected_field")
     self.assertEqual(report[0].field, "bar")
Example #5
0
 def test_validate_string_no(self):
     model = Model({
         'shapes': {
             'TestShape': {
                 'type': 'string',
             }
         }
     })
     report = validate_shape(model.get_shape('TestShape'), "test")
     self.assertEqual(len(report), 0)
Example #6
0
 def test_validate_string_type_check(self):
     model = Model({
         'shapes': {
             'TestShape': {
                 'type': 'string',
             }
         }
     })
     report = validate_shape(model.get_shape('TestShape'), 55)
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_type")
Example #7
0
 def test_validate_string_regex_check(self):
     model = Model({
         'shapes': {
             'TestShape': {
                 'type': 'string',
                 'regex': '^$',
             }
         }
     })
     report = validate_shape(model.get_shape('TestShape'), "foo")
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "value_fails_regex")
Example #8
0
 def test_validate_string_max_fail(self):
     model = Model({
         'shapes': {
             'TestShape': {
                 'type': 'string',
                 'max': 1,
             }
         }
     })
     report = validate_shape(model.get_shape('TestShape'), "test")
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_range")
Example #9
0
 def test_validate_integer_0(self):
     report = validate_shape(self.model.get_shape('TestShape'), 0)
     self.assertEqual(len(report), 0)
Example #10
0
 def test_validate_integer_type_check(self):
     report = validate_shape(self.model.get_shape('TestShape'), "55")
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_type")
Example #11
0
 def test_validate_integer_max(self):
     report = validate_shape(self.model.get_shape('TestShape'), -1)
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_range")
Example #12
0
 def test_validate_bool_false(self):
     report = validate_shape(self.model.get_shape('TestShape'), False)
     self.assertEqual(len(report), 0)
Example #13
0
 def test_validate_map_value(self):
     report = validate_shape(self.model.get_shape('TestShape'), {"foo": 1})
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_type")
Example #14
0
 def test_validate_structure_missing_required(self):
     report = validate_shape(self.model.get_shape('TestShape'), {})
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "required_field_missing")
     self.assertEqual(report[0].field, "foo")
Example #15
0
 def test_validate_structure_type_check(self):
     report = validate_shape(self.model.get_shape('TestShape'), 55)
     self.assertEqual(len(report), 1)
     self.assertEqual(report[0].code, "invalid_type")