def testEncodingWithPayload(self): msg=ClientMessage() vr=0 optype=200 corrID=0 parID=-1 msg.version=vr msg.optype=optype msg.correlation=corrID msg.partition=parID msg.setPayload(bytearray(ctypes.c_uint32(4203239))) frame = bytearray() #Create a byte array of size 18 frame+=bytearray(ctypes.c_int32(18+4)) frame+=bytearray(ctypes.c_uint8(vr)) frame+=bytearray(ctypes.c_uint8(192)) frame+=bytearray(ctypes.c_uint16(optype)) frame+=bytearray(ctypes.c_int32(corrID)) frame+=bytearray(ctypes.c_int32(parID)) frame+=bytearray(ctypes.c_uint16(18+4)) frame+=bytearray(ctypes.c_uint32(4203239)) encodedMsg=msg.encodeMessage() self.assertEqual(frame,encodedMsg)
def getandincrementEncode(title): msg=ClientMessage() msg.optype=0x0a0c msg.correlation=129 msg.setPartition(1) newtitle=title.encode("UTF8") payload=bytearray(ctypes.c_uint32(len(newtitle)))+newtitle msg.setPayload(payload) return msg
def getandsetEncode(title,new): msg=ClientMessage() msg.optype=0x0a0a msg.correlation=127 msg.partition=1 newtitle=title.encode("UTF8") payload=bytearray(ctypes.c_uint32(len(newtitle)))+newtitle+bytearray(ctypes.c_uint32(new)) msg.setPayload(payload) return msg
def compareandsetEncode(title,expected,updated): msg=ClientMessage() msg.optype=0x0a06 msg.correlation=126 msg.partition=1 newtitle=title.encode("UTF8") payload=bytearray(ctypes.c_uint32(len(newtitle)))+newtitle+bytearray(ctypes.c_uint32(expected))+bytearray(ctypes.c_uint32(updated)) msg.setPayload(payload) return msg
def addandgetEncode(title,delta): msg=ClientMessage() msg.optype=0x0a05 msg.correlation=125 msg.partition=1 newtitle=title.encode("UTF8") payload=bytearray(ctypes.c_uint32(len(newtitle)))+newtitle+bytearray(ctypes.c_uint32(delta)) msg.setPayload(payload) return msg
def destroyProxy(name,service): msg=ClientMessage() msg.optype=0x6 newtitle=name.encode("UTF8") newbody=service.encode("UTF8") payload=bytearray(ctypes.c_uint32(len(newtitle)))+newtitle+bytearray(ctypes.c_uint32(len(newbody)))+newbody msg.setPayload(payload) return msg