Example #1
0
def service_client_side_stream(a, b, *args, **kwargs):
    """
    测试客户端流模式的服务端应用
    """
    _ret_obj = [a, b, args, kwargs]
    _json_str = StringTool.object_to_json(_ret_obj)
    print('call service_client_side_stream return : ' + _json_str)
    return [a, b, args, kwargs]
Example #2
0
def compare_object_by_json(object1, object2, logger=None):
    """
    比较两个基本对象类型(通过转换为json串)

    @param {object} object1 - 要比较的对象1
    @param {object} object2 - 要比较的对象2
    @param {logging.Logger} logger=None - 输出日志对象,不一样的时候输出

    @return {bool} - 比较是否通过,如果不通过将输出两个对象
    """
    _json1 = StringTool.object_to_json(object1)
    _json2 = StringTool.object_to_json(object2)
    if _json1 == _json2:
        return True
    else:
        # 输出日志
        if logger is None:
            print('object1: ' + _json1)
            print('object2: ' + _json2)
        else:
            logger.error('object1: %s\nobject2: %s' % (_json1, _json2))
        return False
Example #3
0
def service_server_side_stream(a, b, *args, **kwargs):
    """
    测试服务端流模式的服务端应用
    """
    _ret_obj = [a, b, args, kwargs]
    _json_str = StringTool.object_to_json(_ret_obj)
    print('call service_server_side_stream return : ' + _json_str)
    _i = 0
    while True:
        yield [a, b, 'server+' + str(_i), args, kwargs]
        _i = _i + 1
        if _i > 4:
            break
Example #4
0
def service_bidirectional_stream(a, b, *args, **kwargs):
    """
    测试双向流模式的服务端应用
    """
    _ret_obj = [a, b, args, kwargs]
    _json_str = StringTool.object_to_json(_ret_obj)
    print('call service_bidirectional_stream get : ' + _json_str)
    if a == 'one':
        # 一个请求一个回应的方式,只回复单个内容
        yield [a, b, 'one-->', args, kwargs]
    elif a == 'end':
        # 收到请求,只要不是最后一个,回应None
        if b == 'end':
            yield [a, b, 'end-->', args, kwargs]
        else:
            yield None
    else:
        # 其他情况,一个回应多个
        _i = 0
        while True:
            yield [a, b, 'bidirectional+' + str(_i), args, kwargs]
            _i = _i + 1
            if _i > 4:
                break