Exemplo n.º 1
0
 def test_dataReceived_multiple_messages(self):
     hdrs = {'foo': '1'}
     body = 'blah'
     frame = {'cmd': 'MESSAGE', 'headers': hdrs, 'body': body}
     frameBytes = createFrame(frame).pack() + createFrame(frame).pack()
     
     stomp = StompClient()
     stomp.cmdMap[frame['cmd']] = mock.Mock()
     
     stomp.dataReceived(frameBytes)
             
     self.assertEquals(2, stomp.cmdMap[frame['cmd']].call_count)
     stomp.cmdMap[frame['cmd']].assert_called_with({'cmd': frame['cmd'], 'headers': hdrs, 'body': body})
Exemplo n.º 2
0
 def test_dataReceived_binary(self):
     body = binascii.a2b_hex('f0000a09')
     hdrs = {'foo': '1', 'content-length': str(len(body))}
     frame = {'cmd': 'MESSAGE', 'headers': hdrs, 'body': body}
     frameBytes = createFrame(frame).pack() 
     
     stomp = StompClient()
     stomp.cmdMap[frame['cmd']] = mock.Mock()
     
     stomp.dataReceived(frameBytes)
             
     self.assertEquals(1, stomp.cmdMap[frame['cmd']].call_count)
     stomp.cmdMap[frame['cmd']].assert_called_with({'cmd': frame['cmd'], 'headers': hdrs, 'body': body})
Exemplo n.º 3
0
 def test_dataReceived_partial_message(self):
     hdrs = {'foo': '1'}
     body = 'blah'
     frame = {'cmd': 'MESSAGE', 'headers': hdrs, 'body': body}
     frameBytes = createFrame(frame).pack()
     split = 8
     
     stomp = StompClient()
     stomp.cmdMap[frame['cmd']] = mock.Mock()
     
     stomp.dataReceived(frameBytes[:split])
     stomp.dataReceived(frameBytes[split:])
             
     self.assertEquals(1, stomp.cmdMap[frame['cmd']].call_count)
     stomp.cmdMap[frame['cmd']].assert_called_with({'cmd': frame['cmd'], 'headers': hdrs, 'body': body})
Exemplo n.º 4
0
 def test_frameParse_succeeds(self):
     message = {
         'cmd': 'SEND',
         'headers': {'foo': 'bar', 'hello ': 'there-world with space ', 'empty-value':'', '':'empty-header', 'destination': '/queue/blah'},
         'body': 'some stuff\nand more'
     }
     frame = createFrame(message)
     parser = StompParser()
     
     parser.add(frame.pack())
     self.assertEqual(parser.getMessage(), {'cmd': frame.cmd, 'headers': frame.headers, 'body': frame.body})
     self.assertEqual(parser.getMessage(), None)
     
     #This time remove optional trailing newline which stomper adds to frames
     parser.add(frame.pack()[:-1])
     self.assertEqual(parser.getMessage(), {'cmd': frame.cmd, 'headers': frame.headers, 'body': frame.body})
     self.assertEqual(parser.getMessage(), None)
Exemplo n.º 5
0
 def packFrame(self, message):
     return createFrame(message).pack()