コード例 #1
0
    def test_constraints_maximum_valid_value_equals(self):
        value = 12
        field = self._make_default_field(type='integer',
                                         constraints={'maximum': 12})
        _type = types.IntegerType(field)

        self.assertEqual(_type.cast(value), value)
コード例 #2
0
    def test_constraints_pattern_valid_value(self):
        '''value is valid for pattern'''
        value = 789
        field = self._make_default_field(type='integer',
                                         constraints={"pattern": "[7-9]{3}"})

        _type = types.IntegerType(field)

        self.assertEqual(_type.cast(value), value)
コード例 #3
0
    def test_constraints_enum_valid_value(self):
        '''value is in enum array'''
        value = 5
        field = self._make_default_field(type='integer',
                                         constraints={'enum': [1, 3, 5]})

        _type = types.IntegerType(field)

        self.assertEqual(_type.cast(value), value)
コード例 #4
0
    def test_constraints_pattern_invalid_value(self):
        '''value is invalid for pattern'''
        value = 678
        field = self._make_default_field(type='integer',
                                         constraints={"pattern": "[7-9]{3}"})

        _type = types.IntegerType(field)

        # Can't check pattern for already cast value
        self.assertEqual(_type.cast(value), value)
コード例 #5
0
    def test_constraints_maximum_invalid_value(self):
        value = 12
        field = self._make_default_field(type='integer',
                                         constraints={'maximum': 11})
        _type = types.IntegerType(field)

        with pytest.raises(exceptions.ConstraintError) as e:
            _type.cast(value)
        self.assertEqual(e.value.msg,
                         "The field 'Name' must not be more than 11")
コード例 #6
0
    def test_constraints_minlength_valid_value(self):
        '''maxLength with unsupported type'''
        value = 2
        field = self._make_default_field(type='integer',
                                         constraints={'maxLength': 2})
        _type = types.IntegerType(field)

        with pytest.raises(exceptions.ConstraintNotSupported) as e:
            _type.cast(value)
        self.assertEqual(
            e.value.msg, "Field type 'integer' does not support "
            "the maxLength constraint")
コード例 #7
0
    def test_constraints_enum_invalid_value(self):
        '''value is not in enum array'''
        value = 2
        field = self._make_default_field(type='integer',
                                         constraints={'enum': [1, 3, 5]})

        _type = types.IntegerType(field)

        with pytest.raises(exceptions.ConstraintError) as e:
            _type.cast(value)
        self.assertEqual(
            e.value.msg, "The value for field 'Name' "
            "must be in the enum array")
コード例 #8
0
 def test_integer_type_with_already_cast_value(self):
     for value in [1]:
         for format in ['default']:
             self.field['format'] = format
             _type = types.IntegerType(self.field)
             self.assertEqual(_type.cast(value), value)
コード例 #9
0
    def test_integer_type_simple_raises(self):
        value = 'string'
        _type = types.IntegerType(self.field)

        self.assertRaises(exceptions.InvalidCastError, _type.cast, value)
コード例 #10
0
    def test_integer_type_simple(self):
        value = 1
        _type = types.IntegerType(self.field)

        self.assertEquals(_type.cast(value), value)