Exemple #1
0
class TestMessageGeneratorChannelPost(unittest.TestCase):
    def setUp(self):
        self.mg = MessageGenerator()

    def test_channel_post(self):
        u = self.mg.get_channel_post()
        self.assertIsInstance(u, Update)
        self.assertIsInstance(u.channel_post, Message)
        self.assertEqual(u.channel_post.chat.type, "channel")
        self.assertEqual(u.channel_post.from_user, None)

    def test_with_chat(self):
        cg = ChatGenerator()
        group = cg.get_chat(type="group")
        channel = cg.get_chat(type="channel")
        u = self.mg.get_channel_post(chat=channel)
        self.assertEqual(channel.title, u.channel_post.chat.title)

        with self.assertRaisesRegexp(BadChatException, "telegram\.Chat"):
            self.mg.get_channel_post(chat="chat")
        with self.assertRaisesRegexp(BadChatException, "chat\.type"):
            self.mg.get_channel_post(chat=group)

    def test_with_user(self):
        ug = UserGenerator()
        user = ug.get_user()
        u = self.mg.get_channel_post(user=user)
        self.assertEqual(u.channel_post.from_user.id, user.id)

    def test_with_content(self):
        u = self.mg.get_channel_post(
            text="this is *bold* _italic_", parse_mode="Markdown")
        self.assertEqual(u.channel_post.text, "this is bold italic")
        self.assertEqual(len(u.channel_post.entities), 2)
Exemple #2
0
class TestMessageGeneratorEditedChannelPost(unittest.TestCase):
    def setUp(self):
        self.mg = MessageGenerator()

    def test_edited_channel_post(self):
        u = self.mg.get_edited_channel_post()
        self.assertIsInstance(u.edited_channel_post, Message)
        self.assertIsInstance(u, Update)

    def test_with_parameters(self):
        u = self.mg.get_edited_channel_post(
            text="New *text*", parse_mode="Markdown")
        self.assertEqual(u.edited_channel_post.text, "New text")
        self.assertEqual(len(u.edited_channel_post.entities), 1)

    def test_with_channel_post(self):
        m = self.mg.get_channel_post(text="first").channel_post
        u = self.mg.get_edited_channel_post(channel_post=m, text="second")
        self.assertEqual(m.message_id, u.edited_channel_post.message_id)
        self.assertEqual(m.chat.id, u.edited_channel_post.chat.id)
        self.assertEqual(u.edited_channel_post.text, "second")

        with self.assertRaises(BadMessageException):
            self.mg.get_edited_channel_post(channel_post="Message")