Exemple #1
0
def test_skip_validation_for_optional_enum_with_None_value(
        jsonschema_enum_validator):
    enums = ['encrypted', 'plaintext']
    param_schema = {
        'type': 'string',
        'in': 'query',
        'required': False,
        'enum': enums
    }
    swagger_spec = Mock(spec=Spec, deref=Mock(return_value=param_schema))
    param_value = None
    enum_validator(swagger_spec, None, enums, param_value, param_schema)
    assert jsonschema_enum_validator.call_count == 0
def test_skip_validation_for_optional_enum_with_None_value(
        jsonschema_enum_validator):
    enums = ['encrypted', 'plaintext']
    param_schema = {
        'type': 'string',
        'in': 'query',
        'required': False,
        'enum': enums
    }
    swagger_spec = Mock(spec=Spec, deref=Mock(return_value=param_schema))
    param_value = None
    enum_validator(swagger_spec, None, enums, param_value, param_schema)
    assert jsonschema_enum_validator.call_count == 0
def test_single_jsonschema_call_if_enum_instance_not_array():
    enums = ['a1', 'b2', 'c3']
    param_schema = {
        'enum': enums
    }
    with mock.patch('jsonschema._validators.enum') as m:
        [list(x) for x in enum_validator(
            None, enums, ['a1', 'd4'], param_schema)]
    m.assert_called_once_with(None, enums, ['a1', 'd4'], param_schema)
def test_single_jsonschema_call_if_enum_instance_not_array():
    enums = ['a1', 'b2', 'c3']
    param_schema = {'enum': enums}
    with mock.patch('jsonschema._validators.enum') as m:
        [
            list(x)
            for x in enum_validator(None, enums, ['a1', 'd4'], param_schema)
        ]
    m.assert_called_once_with(None, enums, ['a1', 'd4'], param_schema)
def test_single_jsonschema_call_if_enum_instance_not_array(
        jsonschema_enum_validator):
    enums = ['a1', 'b2', 'c3']
    param_schema = {'enum': enums}
    swagger_spec = Mock(spec=Spec, deref=Mock(return_value=param_schema))
    # list() forces iteration over the generator
    list(enum_validator(swagger_spec, None, enums, ['a1', 'd4'], param_schema))
    jsonschema_enum_validator.assert_called_once_with(None, enums,
                                                      ['a1', 'd4'],
                                                      param_schema)
def test_single_jsonschema_call_if_enum_instance_not_array(
        jsonschema_enum_validator):
    enums = ['a1', 'b2', 'c3']
    param_schema = {
        'enum': enums
    }
    swagger_spec = Mock(spec=Spec, deref=Mock(return_value=param_schema))
    # list() forces iteration over the generator
    list(enum_validator(swagger_spec, None, enums, ['a1', 'd4'], param_schema))
    jsonschema_enum_validator.assert_called_once_with(
        None, enums, ['a1', 'd4'], param_schema)
def test_multiple_jsonschem_call_if_enum_items_present_as_array():
    enums = ['a1', 'b2', 'c3']
    param_schema = {
        'type': 'array',
        'items': {'type': 'string'},
        'enum': enums
    }
    with mock.patch('jsonschema._validators.enum') as m:
        for x in enum_validator(None, enums, ['a1', 'd4'], param_schema):
            list(x)
    m.assert_any_call(None, enums, 'a1', param_schema)
    m.assert_any_call(None, enums, 'd4', param_schema)
def test_multiple_jsonschem_call_if_enum_items_present_as_array():
    enums = ['a1', 'b2', 'c3']
    param_schema = {
        'type': 'array',
        'items': {
            'type': 'string'
        },
        'enum': enums
    }
    with mock.patch('jsonschema._validators.enum') as m:
        for x in enum_validator(None, enums, ['a1', 'd4'], param_schema):
            list(x)
    m.assert_any_call(None, enums, 'a1', param_schema)
    m.assert_any_call(None, enums, 'd4', param_schema)
Exemple #9
0
def test_multiple_jsonschema_calls_if_enum_items_present_as_array():
    swagger_spec = Mock(spec=Spec)
    enums = ['a1', 'b2', 'c3']
    param_schema = {
        'type': 'array',
        'items': {
            'type': 'string'
        },
        'enum': enums
    }
    # list() forces iteration over the generator
    errors = list(enum_validator(swagger_spec, None, enums, ['a1', 'd4'],
                                 param_schema))
    assert len(errors) == 1
    assert "'d4' is not one of ['a1', 'b2', 'c3']" in str(errors[0])
def test_multiple_jsonschema_call_ifs_enum_items_present_as_array(
        jsonschema_enum_validator):
    swagger_spec = Mock(spec=Spec)
    enums = ['a1', 'b2', 'c3']
    param_schema = {
        'type': 'array',
        'items': {
            'type': 'string'
        },
        'enum': enums
    }
    # list() forces iteration over the generator
    list(enum_validator(swagger_spec, None, enums, ['a1', 'd4'], param_schema))
    jsonschema_enum_validator.assert_any_call(None, enums, 'a1', param_schema)
    jsonschema_enum_validator.assert_any_call(None, enums, 'd4', param_schema)
Exemple #11
0
def test_multiple_jsonschema_call_ifs_enum_items_present_as_array(
        jsonschema_enum_validator):
    swagger_spec = Mock(spec=Spec)
    enums = ['a1', 'b2', 'c3']
    param_schema = {
        'type': 'array',
        'items': {
            'type': 'string'
        },
        'enum': enums
    }
    # list() forces iteration over the generator
    list(enum_validator(swagger_spec, None, enums, ['a1', 'd4'], param_schema))
    jsonschema_enum_validator.assert_any_call(None, enums, 'a1', param_schema)
    jsonschema_enum_validator.assert_any_call(None, enums, 'd4', param_schema)