예제 #1
0
파일: mappings.py 프로젝트: nitoqq/mercator
class MediaMapping(ProtoMapping):
    __proto__ = domain_pb2.UserMedia

    __source_input_type__ = sql.Media
    author = ProtoKey('author', UserMapping)
    download_url = ProtoKey('link', str)
    blob = ProtoKey('blob', bytes)
    content_type = ProtoKey('content_type', bytes)
예제 #2
0
파일: mappings.py 프로젝트: nitoqq/mercator
class UserMapping(ProtoMapping):
    __proto__ = domain_pb2.User
    __source_input_type__ = sql.User

    uuid = ProtoKey('id', str)
    email = ProtoKey('email', str)
    username = ProtoKey('login', str)
    tokens = ProtoList('tokens', UserAuthTokenMapping)
    metadata = ProtoKey('extra_info', dict)
예제 #3
0
def test_field_mapping_cast_returns_doesnt_touch_value_target_type_none():
    "FieldMapping.cast() returns the value untouched if the target type is None"

    key = ProtoKey('username')

    value = object()

    result = key.cast(value)

    result.should.equal(value)
예제 #4
0
파일: mappings.py 프로젝트: nitoqq/mercator
class AuthResponseMapping(ProtoMapping):
    __proto__ = domain_pb2.AuthResponse

    token = ProtoKey('token', UserAuthTokenMapping)
예제 #5
0
파일: mappings.py 프로젝트: nitoqq/mercator
class UserAuthTokenMapping(ProtoMapping):
    __proto__ = domain_pb2.User.AuthToken
    __source_input_type__ = sql.AuthToken
    value = ProtoKey('data', str)
    created_at = ProtoKey('created_at', ProtobufTimestamp)
    expires_at = ProtoKey('expires_at', ProtobufTimestamp)
예제 #6
0
파일: mappings.py 프로젝트: nitoqq/mercator
class AuthRequestMapping(ProtoMapping):
    __proto__ = domain_pb2.AuthRequest

    username = ProtoKey('username', str)
    password = ProtoKey('password', str)
예제 #7
0
class TimestampMapping(ProtoMapping):
    __proto__ = Timestamp

    seconds = ProtoKey('seconds', int)
예제 #8
0
class TimestampMapping(ProtoMapping):
    __proto__ = Timestamp
    __source_input_type__ = MyCustomObjectWithTimestampData

    seconds = ProtoKey('seconds', int)