Example #1
0
 def test_stores_event(self):
     index = EventIndex(self.es, 'index_test_name')
     event = Event(
         'test_event', {
             'number': 3,
             'string': 'hi',
             'float': 3.4,
             'dict': {
                 'one': 1,
                 'two': 'dos'
             },
             'date': datetime.date(2014, 5, 2),
             'bool': True,
             'list': [1, 2, 3]
         })
     with patch('uuid.uuid4', Mock(hex='testuuid')):
         index.index(event)
     es_event = self.es.get(index='index_test_name', id='testuuid')
     self.assertEquals(es_event['_source']['s_string'], 'hi')
     self.assertEquals(es_event['_source']['i_number'], 3)
     self.assertEquals(es_event['_source']['f_float'], 3.4)
     self.assertEquals(es_event['_source']['o_dict'], {
         's_two': 'dos',
         'i_one': 1
     })
     self.assertEquals(es_event['_source']['d_date'],
                       datetime.date(2014, 5, 2))
     self.assertEquals(es_event['_source']['b_bool'], True)
     self.assertEquals(es_event['_source']['l_list'], [1, 2, 3])
     self.assertEquals(es_event['_source']['type'], 'test_event')
Example #2
0
 def emit_event(self, event_type, payload, headers=None, **kwargs):
     headers = headers or {}
     headers.setdefault('trace_id', trace.get_id())
     event = Event(event_type,
                   payload,
                   source=self.identity,
                   headers=headers)
     self.events.emit(event, **kwargs)
Example #3
0
 def event(self, channel, event_type=None, payload=None):
     """
     Receive an event of type `event_type` with the given `payload`. This
     is used by the simple event system in lymph.events.simple:Broker
     """
     event = Event(event_type, payload)
     try:
         self.container.handle_event(event)
     except:
         raise
     else:
         channel.ack()
Example #4
0
    def test_method_descriptor(self):
        self.dispatcher.register('foo', self.make_handler('foo'))
        self.dispatcher.register('#', self.make_handler('hash'))

        class StubInterface(object):
            dispatcher = self.dispatcher

        stub = StubInterface()
        event = Event('foo', {'x': 42})
        stub.dispatcher(event)

        self.assertEqual(set(self.handler_log), {
            ('foo', (stub, event)),
            ('hash', (stub, event)),
        })
Example #5
0
 def emit_event(self, event_type, payload):
     event = Event(event_type, payload, source=self.identity)
     self.event_system.emit(self, event)