def test_message_equality(self): outgoing_message = OutgoingMessage('to', 'test') incoming_message = IncomingMessage('from', 'test') self.assertNotEqual(outgoing_message, incoming_message) self.assertNotEqual(outgoing_message, OutgoingMessage('you', 'test')) self.assertEqual(outgoing_message, OutgoingMessage('foo', 'bar', id=outgoing_message.id))
def send(recipient, text, transport="default"): """ Create a Message object with the following attributes and send it. Return the Message object """ message = OutgoingMessage(recipient, text, transport=transport) message.send() return message
def test_message_send_method_a_second_time(self): """ Test send method right after the first test to check against a duplicate message sending. """ message = OutgoingMessage('foo', 'test_message_send_method 2') message.send() self.router.start(timeout=1, limit=1) self.assertEqual(CounterMessageProcessor.message_sent, 1)
def test_to_dict(self): m = OutgoingMessage("to", "test") d = m.to_dict() self.assertIn("recipient", d) self.assertIn("transport", d) self.assertIn("creation_date", d) self.assertIn("id", d) self.assertIn("response_to", d) m = IncomingMessage("from", "test") d = m.to_dict() self.assertIn("author", d) self.assertIn("transport", d) self.assertIn("reception_date", d) self.assertIn("id", d)
def test_manual_outgoing_message(self): OutgoingMessage('foo', 'bar').send() self.router.start(1, 1) print "here" self.transport.start_outgoing_messages_loop(1, 1) self.assertEqual(CounterMessageTransport.message_sent, 1)
def test_several_message_processors(self): settings.MESSAGE_PROCESSORS += ( 'pragmatic_sms.processors.test.CounterMessageProcessor', ) self.router = SmsRouter() self.router.connect() self.message_worker.dispatch_outgoing_message( OutgoingMessage('foo', 'test_several_message_processors out')) self.message_worker.dispatch_incoming_message( IncomingMessage('foo', 'test_several_message_processors in')) self.router.start(timeout=1, limit=1) self.assertEqual(CounterMessageProcessor.message_sent, 2) self.assertEqual(CounterMessageProcessor.message_received, 2)
def handle_outgoing_message(self, body, message): """ Callback called when a message ready to be sent. It unpacks the JSON message, turn it into an OutgoingMessage instance an pass it to 'on_send_message'. This method is used for internal purpose and you should not override it unless you know what you are doing. To react on the reception of messages, override 'on_send_message'. """ # todo: try / except message reception and log error if self.on_send_message(OutgoingMessage(**body)): message.ack()
def test_create_message(self): outgoing_message = OutgoingMessage('to', 'test') incomming_message = IncomingMessage('from', 'test')
def test_message_send_method(self): message = OutgoingMessage('foo', 'test_message_send_method') message.send() self.router.start(timeout=1, limit=1) self.assertEqual(CounterMessageProcessor.message_sent, 1)
def test_dispatch_outgoing_message(self): self.message_worker.dispatch_outgoing_message( OutgoingMessage('foo', 'test_dispatch_outgoing_message')) self.router.start(timeout=1, limit=1) self.assertTrue(CounterMessageProcessor.message_sent)