예제 #1
0
def test_integer_input():

    field = Integer(name='name', required=True)

    mapper_session = get_mapper_session(
        data={'email': '*****@*****.**'}, output={})
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    mapper_session = get_mapper_session(
        data={'name': 'foo', 'email': '*****@*****.**'}, output={})
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    output = {}
    mapper_session = get_mapper_session(
        data={'name': 2, 'email': '*****@*****.**'}, output=output)
    field.marshal(mapper_session)
    assert output == {'name': 2}

    output = {}
    mapper_session = get_mapper_session(
        data={'name': '2', 'email': '*****@*****.**'}, output=output)
    field.marshal(mapper_session)
    assert output == {'name': 2}
예제 #2
0
def test_integer_field_invalid_type():

    field = Integer(name='name')
    mapper_session = get_mapper_session(
        data={'name': None, 'email': '*****@*****.**'}, output={})
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)
예제 #3
0
def test_integer_field_invalid_type():

    field = Integer(name='name')
    mapper_session = get_mapper_session(
        data={'name': None, 'email': '*****@*****.**'}, output={})
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)
예제 #4
0
def test_marshal_default():

    field = Integer(name='name', default=5)

    output = {}
    mapper_session = get_mapper_session(data={}, output=output)

    field.marshal(mapper_session)
    assert output == {'name': 5}
예제 #5
0
def test_marshal_default():

    field = Integer(name='name', default=5)

    output = {}
    mapper_session = get_mapper_session(data={}, output=output)

    field.marshal(mapper_session)
    assert output == {'name': 5}
예제 #6
0
def test_marshal_read_only_integer():

    field = Integer(name='name', read_only=True, required=True)

    output = {}
    mapper_session = get_mapper_session(
        data={'id': 2, 'email': '*****@*****.**'}, output=output)

    field.marshal(mapper_session)
    assert output == {}
예제 #7
0
def test_marshal_read_only_integer():

    field = Integer(name='name', read_only=True, required=True)

    output = {}
    mapper_session = get_mapper_session(
        data={'id': 2, 'email': '*****@*****.**'}, output=output)

    field.marshal(mapper_session)
    assert output == {}
예제 #8
0
파일: test_numeric.py 프로젝트: ipv1337/kim
def test_integer_output():
    class Foo(object):
        name = 2

    field = Integer(name='name', required=True)

    output = {}
    mapper_session = get_mapper_session(obj=Foo(), output=output)
    field.serialize(mapper_session)
    assert output == {'name': 2}
예제 #9
0
def test_integer_input():

    field = Integer(name='name', required=True)

    mapper_session = get_mapper_session(
        data={'email': '*****@*****.**'}, output={})
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    mapper_session = get_mapper_session(
        data={'name': 'foo', 'email': '*****@*****.**'}, output={})
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    output = {}
    mapper_session = get_mapper_session(
        data={'name': 2, 'email': '*****@*****.**'}, output=output)
    field.marshal(mapper_session)
    assert output == {'name': 2}

    output = {}
    mapper_session = get_mapper_session(
        data={'name': '2', 'email': '*****@*****.**'}, output=output)
    field.marshal(mapper_session)
    assert output == {'name': 2}
예제 #10
0
def test_integer_output():

    class Foo(object):
        name = 2

    field = Integer(name='name', required=True)

    output = {}
    mapper_session = get_mapper_session(obj=Foo(), output=output)
    field.serialize(mapper_session)
    assert output == {'name': 2}
예제 #11
0
def test_is_valid_choice():

    field = Integer(name='type', choices=[1, 2])
    output = {}
    mapper_session = get_mapper_session(data={'type': 3}, output=output)
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    mapper_session = get_mapper_session(data={'type': 1}, output=output)
    field.marshal(mapper_session)
    assert output == {'type': 1}
예제 #12
0
파일: test_mapper.py 프로젝트: larsks/kim
    class MapperBase(Mapper):

        __type__ = TestType

        id = Integer()
        name = String()
        users = Collection(Nested(UserMapper, allow_create=True))
예제 #13
0
파일: test_mapper.py 프로젝트: larsks/kim
    class MapperBase(Mapper):

        __type__ = TestType

        id = Integer()
        name = String()
        user = Nested(UserMapper, null_default={})
예제 #14
0
파일: test_mapper.py 프로젝트: larsks/kim
        class MapperBase(Mapper):

            __type__ = TestType

            id = Integer()
            name = String()

            __roles__ = {'public': object()}
예제 #15
0
파일: test_mapper.py 프로젝트: larsks/kim
    class MapperBase(Mapper):

        __type__ = TestType

        id = Integer()
        name = String()

        __roles__ = {'private': blacklist('id')}
예제 #16
0
파일: test_mapper.py 프로젝트: larsks/kim
    class MapperBase(Mapper):

        __type__ = TestType

        id = Integer()
        name = String()
        user = Nested(UserMapper, role='private')

        __roles__ = {'private': whitelist('name', 'user')}
예제 #17
0
파일: test_mapper.py 프로젝트: larsks/kim
    class MapperA(PolymorphicMapper):

        __type__ = TestType
        id = Integer()
        name = String()
        object_type = String()

        __mapper_args__ = {
            'polymorphic_on': 'object_type',
        }
예제 #18
0
파일: test_numeric.py 프로젝트: ipv1337/kim
def test_min_max():

    field = Integer(name='age', min=20, max=35)
    output = {}

    mapper_session = get_mapper_session(data={'age': 15}, output=output)
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    mapper_session = get_mapper_session(data={'age': 40}, output=output)
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    mapper_session = get_mapper_session(data={'age': 25}, output=output)
    field.marshal(mapper_session)
    assert output == {'age': 25}

    mapper_session = get_mapper_session(data={'age': '25'}, output=output)
    field.marshal(mapper_session)
    assert output == {'age': 25}
예제 #19
0
파일: test_mapper.py 프로젝트: larsks/kim
    class MapperBase(Mapper):

        __type__ = TestType

        id = Integer()
        name = String()
        user = Nested(UserMapper, role='private')

        __roles__ = {
            'private': [
                'id',
            ]
        }
예제 #20
0
파일: test_mapper.py 프로젝트: larsks/kim
    class MapperA(PolymorphicMapper):

        __type__ = TestType
        id = Integer()
        name = String()
        object_type = String()

        __roles__ = {
            '__default__': whitelist('id'),
            'overview': whitelist('id', 'name', 'object_type'),
        }

        __mapper_args__ = {
            'polymorphic_on': 'object_type',
        }
예제 #21
0
def test_is_valid_integer_pipe():
    """test piping data through is_valid_integer.
    """

    field = Integer(name='test')
    session = Session(field, 'test', {})

    with pytest.raises(FieldInvalid):
        is_valid_integer(session)

    session.data = '2'
    assert is_valid_integer(session) == 2
    session.data = 2
    assert is_valid_integer(session) == 2
    session.data = 2.3
    assert is_valid_integer(session) == 2
예제 #22
0
def test_is_valid_choice():

    field = Integer(name='type', choices=[1, 2])
    output = {}
    mapper_session = get_mapper_session(data={'type': 3}, output=output)
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    mapper_session = get_mapper_session(data={'type': 1}, output=output)
    field.marshal(mapper_session)
    assert output == {'type': 1}
예제 #23
0
파일: test_mapper.py 프로젝트: larsks/kim
    class MapperBase(Mapper):

        __type__ = TestType

        id = Integer()
        name = String()
예제 #24
0
def test_min_max_integer():

    field = Integer(name='age', min=20, max=35)
    output = {}

    mapper_session = get_mapper_session(data={'age': 15}, output=output)
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    mapper_session = get_mapper_session(data={'age': 40}, output=output)
    with pytest.raises(FieldInvalid):
        field.marshal(mapper_session)

    mapper_session = get_mapper_session(data={'age': 25}, output=output)
    field.marshal(mapper_session)
    assert output == {'age': 25}

    mapper_session = get_mapper_session(data={'age': '25'}, output=output)
    field.marshal(mapper_session)
    assert output == {'age': 25}

    mapper_session = get_mapper_session(data={'age': 35}, output=output)
    field.marshal(mapper_session)
    assert output == {'age': 35}