def test_event_queue(self): data = {u'hello': u'wörld', 'number': 123, 'weird': None} before = Event(attributes=data) my_queue = Queue() my_queue.put(str(before)) after = Event(my_queue.get()) self.assertEqual(after.attributes, data)
def test_event___str__(self): event = Event() self.assertEqual(str(event), '{"type": "event"}') data = {u'hellô': u'wörld', 'number': 123} event = Event(attributes=json.dumps(data)) data.update({'type': 'event'}) self.assertEqual(json.loads(str(event)), data) self.assertEqual(yaml.safe_load(str(event)), data)
def test_event___setattr__(self): data = {'personEmail': '*****@*****.**'} event = Event(attributes=data) with self.assertRaises(AttributeError): value = event.person_name event.person_name = event.personEmail self.assertEqual(event.person_name, '*****@*****.**')
def test_event___getattr__(self): event = Event() with self.assertRaises(AttributeError): value = event.unknown data = {u'hello': u'wörld', 'number': 123, 'weird': None} event = Event(attributes=data) self.assertEqual(event.hello, u'wörld') self.assertEqual(event.number, 123) self.assertEqual(event.weird, None) event = Event(attributes=json.dumps(data)) self.assertEqual(event.hello, u'wörld') self.assertEqual(event.number, 123) self.assertEqual(event.weird, None)
def test_event_init(self): event = Event() self.assertEqual(event.type, 'event') self.assertEqual(event.attributes, {}) event = Event(None) self.assertEqual(event.attributes, {}) event = Event('') self.assertEqual(event.attributes, {}) event = Event(attributes=None) self.assertEqual(event.attributes, {}) event = Event(attributes='') self.assertEqual(event.attributes, {}) data = {u'hellô': 'b', u'wörld': 123} event = Event(attributes=json.dumps(data)) self.assertEqual(event.attributes, data) data = {u'hellô': 'b', u'wörld': 123} event = Event(attributes=data) self.assertEqual(event.attributes, data)
def test_format(self): logging.info('***** format') space = mock.Mock() speaker = mock.Mock() u = SpaceUpdater(space=space, speaker=speaker) inbound = Event({ 'who_cares': 'no attribute will be used anayway', }) outbound = u.format(inbound) self.assertEqual(outbound, u'an unknown event has been received') inbound = Message({ 'from_label': '*****@*****.**', 'text': 'my message', }) outbound = u.format(inbound) self.assertEqual(outbound, '[email protected]: my message') inbound = Message({ 'from_label': '*****@*****.**', 'text': 'my message', 'content': '<p>my message</p>', }) outbound = u.format(inbound) self.assertEqual(outbound.text, '[email protected]: my message') self.assertEqual(outbound.content, '[email protected]: <p>my message</p>') inbound = Join({ 'actor_label': '*****@*****.**', }) outbound = u.format(inbound) self.assertEqual(outbound, u'[email protected] has joined') inbound = Leave({ 'actor_label': '*****@*****.**', }) outbound = u.format(inbound) self.assertEqual(outbound, u'[email protected] has left')
def test_event___repr__(self): event = Event() self.assertEqual(repr(event), 'Event({})')
def test_event_get(self): event = Event() with self.assertRaises(AttributeError): value = event.unknown self.assertEqual(event.get('unknown'), None) self.assertEqual(event.get('unknown', 'hye'), 'hye') data = {u'hellô': u'wörld', 'number': 123, 'weird': None} event = Event(attributes=data) self.assertEqual(event.get(u'hellô'), u'wörld') self.assertEqual(event.get('number'), 123) self.assertEqual(event.get('weird'), None) self.assertEqual(event.get('weird', []), []) event = Event(attributes=json.dumps(data)) self.assertEqual(event.get(u'hellô'), u'wörld') self.assertEqual(event.get('number'), 123) self.assertEqual(event.get('weird'), None) self.assertEqual(event.get('weird', []), [])
def test_event___eq__(self): a = Event({"hello": "world"}) b = Event({"hello": "world"}) self.assertEqual(a, b) a = Event({"hello": "world"}) b = Event({"hello": "world"}) self.assertTrue(a.__eq__(b)) self.assertTrue(b.__eq__(a)) a = Event({"hello": "world"}) b = Event({"hello": "moon"}) self.assertFalse(a.__eq__(b)) self.assertFalse(b.__eq__(a)) a = Event({"hello": "world"}) b = Message({"hello": "world"}) self.assertFalse(a.__eq__(b)) self.assertFalse(b.__eq__(a)) a = Event({"hello": "world"}) b = {"hello": "world"} self.assertFalse(a.__eq__(b))
my_event = Event({ "id": "1_lzY29zcGFyazovL3VzL01FU1NBR0UvOTJkYjNiZTAtNDNiZC0xMWU2LThhZTktZGQ1YjNkZmM1NjVk", "channel_id": "Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0", "roomType": "group", "toPersonId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMDZkNzFhNS0wODMzLTRmYTUtYTcyYS1jYzg5YjI1ZWVlMmX", "toPersonEmail": "*****@*****.**", "text": "The PM for this project is Mike C. and the Engineering Manager is Jane W.", "markdown": "**PROJECT UPDATE** A new project plan has been published [on Box](http://box.com/s/lf5vj). The PM for this project is <@personEmail:[email protected]> and the Engineering Manager is <@personEmail:[email protected]>.", "files": ["http://www.example.com/images/media.png"], "personId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "personEmail": "*****@*****.**", "stamp": "2015-10-18T14:26:16+00:00", "mentionedPeople": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNDlmNzRkOS1kYjhhLTQzY2EtODk2Yi04NzllZDI0MGFjNTM", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83YWYyZjcyYy0xZDk1LTQxZjAtYTcxNi00MjlmZmNmYmM0ZDg" ], "from_id": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY", "mentioned_ids": [ "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8yNDlmNzRkOS1kYjhhLTQzY2EtODk2Yi04NzllZDI0MGFjNTM", "Y2lzY29zcGFyazovL3VzL1BFT1BMRS83YWYyZjcyYy0xZDk1LTQxZjAtYTcxNi00MjlmZmNmYmM0ZDg" ], })