df = self.tids[msg[TID]]
# callback
del(self.tids[msg[TID]])
- df.callback({'rsp' : msg[RSP], '_krpc_sender': addr})
+ msg[RSP]['_krpc_sender'] = addr
+ df.callback(msg[RSP])
else:
# no tid, this transaction timed out already...
if self.noisy:
return {'values': ['1'*length]*num}
def make(port):
+ from stats import StatsLogger
af = Receiver()
- a = hostbroker(af, {'SPEW': False})
+ a = hostbroker(af, StatsLogger(None, None, {}), {'SPEW': False})
a.protocol = KRPC
p = reactor.listenUDP(port, a)
return af, a, p
def gotMsg(self, dict, should_be):
_krpc_sender = dict['_krpc_sender']
- msg = dict['rsp']
- self.failUnlessEqual(msg['msg'], should_be)
+ self.failUnlessEqual(dict['msg'], should_be)
def testManyEcho(self):
for i in xrange(100):
def testUnknownMeth(self):
df = self.a.connectionForAddr(('127.0.0.1', 1181)).sendRequest('blahblah', {'msg' : "This is a test."})
+ df = self.failUnlessFailure(df, KrpcError)
df.addBoth(self.gotErr, KRPC_ERROR_METHOD_UNKNOWN)
return df
def testMalformedRequest(self):
df = self.a.connectionForAddr(('127.0.0.1', 1181)).sendRequest('echo', {'msg' : "This is a test.", 'foo': 'bar'})
- df.addBoth(self.gotErr, KRPC_ERROR_MALFORMED_REQUEST)
+ df = self.failUnlessFailure(df, KrpcError)
+ df.addBoth(self.gotErr, KRPC_ERROR_MALFORMED_REQUEST, TypeError)
return df
- def gotErr(self, err, should_be):
- self.failUnlessEqual(err.value[0], should_be)
+ def gotErr(self, value, should_be, *errorTypes):
+ self.failUnlessEqual(value[0], should_be)
+ if errorTypes:
+ self.flushLoggedErrors(*errorTypes)
def testLongPackets(self):
df = self.a.connectionForAddr(('127.0.0.1', 1181)).sendRequest('values', {'length' : 1, 'num': 2000})