Make MessageEntity objects comparable (#1465)

This commit is contained in:
Bibo-Joshi 2019-08-23 23:54:04 +02:00 committed by Noam Meltzer
parent 7eb7c30741
commit c7e9281068
2 changed files with 18 additions and 0 deletions

View file

@ -55,6 +55,8 @@ class MessageEntity(TelegramObject):
self.url = url
self.user = user
self._id_attrs = (self.type, self.offset, self.length)
@classmethod
def de_json(cls, data, bot):
data = super(MessageEntity, cls).de_json(data, bot)

View file

@ -64,3 +64,19 @@ class TestMessageEntity(object):
assert entity_dict['url'] == message_entity.url
if message_entity.user:
assert entity_dict['user'] == message_entity.user.to_dict()
def test_equality(self):
a = MessageEntity(MessageEntity.BOLD, 2, 3)
b = MessageEntity(MessageEntity.BOLD, 2, 3)
c = MessageEntity(MessageEntity.CODE, 2, 3)
d = MessageEntity(MessageEntity.CODE, 5, 6)
assert a == b
assert hash(a) == hash(b)
assert a is not b
assert a != c
assert hash(a) != hash(c)
assert a != d
assert hash(a) != hash(d)