コード例 #1
0
    def test_default_values(self):
        reaction = api.Reaction(ROWID=2, associated_message_id=1)

        self.assertEqual(reaction.ROWID, 2)
        self.assertEqual(reaction.associated_message_id, 1)
        self.assertEqual(reaction.guid, '')
        self.assertEqual(reaction.text, '')
        self.assertEqual(reaction.handle_id, 1)
        self.assertIsNone(reaction.service)
        self.assertEqual(reaction.date, 0)
        self.assertEqual(reaction.date_read, 0)
        self.assertEqual(reaction.date_delivered, 0)
        self.assertEqual(reaction.is_delivered, 0)
        self.assertEqual(reaction.is_finished, 0)
        self.assertEqual(reaction.is_from_me, 0)
        self.assertEqual(reaction.is_read, 0)
        self.assertEqual(reaction.is_sent, 0)
        self.assertEqual(reaction.cache_has_attachments, 0)
        self.assertIsNone(reaction.cache_roomnames)
        self.assertEqual(reaction.item_type, 0)
        self.assertEqual(reaction.other_handle, 0)
        self.assertIsNone(reaction.group_title)
        self.assertEqual(reaction.group_action_type, 0)
        self.assertIsNone(reaction.associated_message_guid)
        self.assertEqual(reaction.associated_message_type, 0)
        self.assertEqual(reaction.message_update_date, 0)
        self.assertEqual(reaction.error, 0)
コード例 #2
0
    def test_text_no_emoji(self):
        testText = 'Text without any emojis'

        reaction = api.Reaction(ROWID=2,
                                associated_message_id=1,
                                text=testText)

        self.assertEqual(reaction.text, testText)
コード例 #3
0
    def test_text_with_emoji(self):
        testText = 'Text with an � emoji'
        correctText = 'Text with an  emoji'

        reaction = api.Reaction(ROWID=2,
                                associated_message_id=1,
                                text=testText)

        self.assertNotEqual(reaction.text, testText)
        self.assertEqual(reaction.text, correctText)
コード例 #4
0
    def test_add_reaction_no_message_in_list(self):
        msgList = api.MessageList()
        reaction = api.Reaction(ROWID=2,
                                associated_message_id=1,
                                handle_id=1,
                                associated_message_type=2000)

        msgList.addReaction(reaction)

        self.assertDictEqual(msgList.messages, {})
コード例 #5
0
    def test_show_reaction_window(self):
        msg = api.Message(ROWID=1, guid='MSG1')
        reaction1 = api.Reaction(ROWID=2,
                                 guid='REACT1',
                                 associated_message_id=msg.rowid,
                                 associated_message_guid=msg.guid,
                                 associated_message_type=2000)
        msg.addReaction(reaction1)

        self.messageFrame._showReactionWindow(msg, msg.messageParts[0])

        self.assertTrue(self.messageFrame.reactionWindow.winfo_exists())
コード例 #6
0
    def test_add_second_reaction_same_handle_remove_reaction(self):
        testReaction = api.Reaction(associated_message_id=1,
                                    ROWID=1,
                                    handle_id=1,
                                    associated_message_type=2000)
        testReaction2 = api.Reaction(associated_message_id=1,
                                     ROWID=2,
                                     handle_id=1,
                                     associated_message_type=3000)
        correctReactionDict = {
            testReaction.handleId: {
                (testReaction.associated_message_type % 1000): testReaction2
            }
        }
        msg = api.Message(ROWID=1)

        msg.addReaction(testReaction)
        msg.addReaction(testReaction2)

        self.assertDictEqual(msg.messageParts[0].reactions,
                             correctReactionDict)
コード例 #7
0
    def test_add_first_reaction(self):
        testReaction = api.Reaction(associated_message_id=1,
                                    ROWID=1,
                                    handle_id=1,
                                    associated_message_type=2000)
        correctReactionDict = {
            testReaction.handleId: {
                (testReaction.associated_message_type % 1000): testReaction
            }
        }
        msg = api.Message(ROWID=1)

        msg.addReaction(testReaction)

        self.assertDictEqual(msg.messageParts[0].reactions,
                             correctReactionDict)
コード例 #8
0
    def test_add_reaction_with_message_in_list(self):
        msgList = api.MessageList()
        msg = api.Message(ROWID=1)
        reaction = api.Reaction(ROWID=2,
                                associated_message_id=1,
                                handle_id=1,
                                associated_message_type=2000)
        msgList.append(msg)
        correctReactionDict = {
            reaction.handle_id: {
                (reaction.associated_message_type % 1000): reaction
            }
        }

        msgList.addReaction(reaction)

        self.assertEqual(msgList.messages[msg.ROWID].messageParts[0].reactions,
                         correctReactionDict)
コード例 #9
0
    def test__add_message_reaction(self):
        chat = api.Chat(ROWID=1)
        msg = api.Message(ROWID=2)
        reaction = api.Reaction(ROWID=1,
                                associated_message_id=2,
                                handle_id=1,
                                associated_message_type=2000)
        chat.addMessage(msg)
        correctReactionDict = {
            reaction.handle_id: {
                (reaction.associated_message_type % 1000): reaction
            }
        }

        chat._addMessage(reaction)

        self.assertDictEqual(
            chat.messageList.messages[msg.ROWID].messageParts[0].reactions,
            correctReactionDict)
コード例 #10
0
    def test_default_properties(self):
        reaction = api.Reaction(ROWID=2, associated_message_id=1)

        self.assertEqual(reaction.rowid, reaction.ROWID)
        self.assertEqual(reaction.handleId, reaction.handle_id)
        self.assertEqual(reaction.handleName, '')
        self.assertEqual(reaction.dateRead, reaction.date_read)
        self.assertEqual(reaction.isDelivered, reaction.is_delivered == 1)
        self.assertEqual(reaction.isFromMe, reaction.is_from_me == 1)
        self.assertEqual(reaction.isiMessage, reaction.service == 'iMessage')
        self.assertEqual(reaction.isRead, reaction.is_read == 1)
        self.assertEqual(reaction.isSent, reaction.is_sent == 1)
        self.assertEqual(reaction.isTemporary, reaction.ROWID < 0)
        self.assertIsNone(reaction.attachment)
        self.assertDictEqual(reaction.reactions, {})
        self.assertTrue(reaction.isAddition)
        self.assertEqual(reaction.reactionType,
                         reaction.associated_message_type)
        self.assertEqual(reaction.associatedMessageId,
                         reaction.associated_message_id)
        self.assertTrue(reaction.isReaction)
コード例 #11
0
    def test_is_newer_same_date(self):
        reaction = api.Reaction(ROWID=2, associated_message_id=1, date=1)
        reaction2 = api.Reaction(ROWID=4, associated_message_id=3, date=1)

        self.assertFalse(reaction.isNewer(reaction2))
コード例 #12
0
 def test_no_associated_message_id(self):
     with self.assertRaises(api.ReactionNoAssociatedIdException):
         api.Reaction(ROWID=1)
コード例 #13
0
 def test_no_rowid(self):
     with self.assertRaises(api.ReceivedNoIdException):
         api.Reaction()
コード例 #14
0
    def test_is_temporary(self):
        reaction = api.Reaction(ROWID=-1, associated_message_id=1)

        self.assertTrue(reaction.isTemporary)
コード例 #15
0
 def test_none_attachment_index(self):
     with self.assertRaises(api.ReactionNoAttachmentIndexException):
         api.Reaction(ROWID=1,
                      associated_message_id=1,
                      attachmentIndex=None)
コード例 #16
0
    def test_get_text(self):
        reaction = api.Reaction(ROWID=2, associated_message_id=1)

        text = reaction.getText()

        self.assertEqual(text, '')