コード例 #1
0
ファイル: json.py プロジェクト: yarpc/yarpc-python
def json(respw, server, transport, **kwargs):
    rpc = RPC(service="client", outbounds={"yarpc-test": tr.factory(server, transport)})

    expected = {"token": rand.string(7)}

    request = Request(procedure="echo", body=expected, ttl=10000)
    client = JSONClient(rpc.channel("yarpc-test"))
    response = yield client.call(request)

    if response.body == expected:
        respw.success("Server said: %s" % response.body["token"])
    else:
        respw.fail("expected %s, got %s" % (expected, response.body))
コード例 #2
0
ファイル: raw.py プロジェクト: yarpc/yarpc-python
def raw(respw, server, transport, **kwargs):
    rpc = RPC(
        service='client',
        outbounds={
            'yarpc-test': tr.factory(server, transport),
        },
    )

    expected = rand.string(7)

    request = Request(procedure='echo/raw', body=expected, ttl=10000)
    client = RawClient(rpc.channel('yarpc-test'))
    response = yield client.call(request)

    if response.body == expected:
        respw.success("Server said: %s" % response.body)
    else:
        respw.fail("expected %s, got %s" % (expected, response.body))
コード例 #3
0
ファイル: thrift.py プロジェクト: yarpc/yarpc-python
def thrift(respw, server, transport, **kwargs):
    rpc = RPC(
        service='client',
        outbounds={
            'yarpc-test': tr.factory(server, transport),
        },
    )

    expected = rand.string(7)

    request = Request(
        body=service.Echo.echo(service.Ping(beep=expected)),
        ttl=10000,
    )
    client = ThriftClient(rpc.channel('yarpc-test'))
    response = yield client.call(request)

    if response.body.boop == expected:
        respw.success("Server said: %s" % response.body.boop)
    else:
        respw.fail("expected %s, got %s" % (expected, response.body))
コード例 #4
0
ファイル: json.py プロジェクト: yarpc/yarpc-python
def json(respw, server, transport, **kwargs):
    rpc = RPC(
        service='client',
        outbounds={
            'yarpc-test': tr.factory(server, transport),
        },
    )

    expected = {
        'token': rand.string(7),
    }

    request = Request(procedure='echo', body=expected, ttl=10000)
    client = JSONClient(rpc.channel('yarpc-test'))
    future = client.call(request)
    response = future.result()

    if response.body == expected:
        respw.success("Server said: %s" % response.body['token'])
    else:
        respw.fail("expected %s, got %s" % (expected, response.body))
コード例 #5
0
ファイル: headers.py プロジェクト: yarpc/yarpc-python
from os import path

from tornado import gen

import crossdock
from crossdock import rand, transport as tr
from yarpc import RPC, Request
from yarpc.encoding.raw import RawClient
from yarpc.encoding.json import JSONClient
from yarpc.encoding.thrift import load, ThriftClient

idl = path.join(path.dirname(crossdock.__file__), 'Echo.thrift')
service = load(idl)

token1 = rand.string(10)
token2 = rand.string(10)

# tuples of (desc, give, want)
tests = [
    (
        'valid headers',
        {'token1': token1, 'token2': token2},
        {'token1': token1, 'token2': token2},
    ),
    (
        'non-string values',
        {'token': 42},
        {'token': '42'},
    ),
    (