Пример #1
0
    def test_reopen_open_ml(self):
        initial_members = {
            "*****@*****.**", "*****@*****.**", "*****@*****.**",
            "*****@*****.**"
        }
        fake_db.create_ml("tenant1", 'ml-000010', "hoge", initial_members,
                          "*****@*****.**")
        msg = 'From: Test1 <*****@*****.**>\n' \
              'To: ml-000010 <*****@*****.**>, ' \
              'Test2 <*****@*****.**>\n' \
              'Subject: REOPEN\n' \
              '\n' \
              'Test mail\n'
        final_members = {
            "*****@*****.**", "*****@*****.**", "*****@*****.**",
            "*****@*****.**"
        }

        with mock.patch.object(self.handler, 'send_post') as m:
            m.side_effect = self._send_post
            self.handler.process_message(("127.0.0.2", 1000),
                                         "*****@*****.**",
                                         ["*****@*****.**"], msg)
            self.assertEqual(self.ml_name_arg, 'ml-000010')
            self.assertEqual(fake_db.get_members('ml-000010'), final_members)
Пример #2
0
    def test_error_return(self):
        initial_members = {
            "*****@*****.**", "*****@*****.**", "*****@*****.**",
            "*****@*****.**"
        }
        fake_db.create_ml("tenant1", 'ml-000010', "hoge", initial_members,
                          "*****@*****.**")
        msg = 'From: MAILER-DAEMON <*****@*****.**>\n' \
              'To: ml-000010-error <*****@*****.**>\n' \
              'Original-Recipient: rfc822;[email protected]\n' \
              'Subject: Error\n' \
              '\n' \
              'Test mail\n'
        final_members = {
            "*****@*****.**", "*****@*****.**", "*****@*****.**",
            "*****@*****.**"
        }

        with mock.patch.object(self.handler, 'send_post') as m:
            m.side_effect = self._send_post
            self.handler.process_message(("127.0.0.2", 1000),
                                         "*****@*****.**",
                                         ["*****@*****.**"], msg)
            self.assertEqual(m.call_count, 0)
            self.assertEqual(fake_db.get_members('ml-000010'), final_members)
Пример #3
0
    def test_create_ml_w_2_tos_i_admin(self):
        msg = 'From: Test1 <*****@*****.**>\n' \
              'To: New mail <*****@*****.**>, Test2 <*****@*****.**>\n' \
              'Subject: Test message\n' \
              '\n' \
              'Test mail\n'
        final_members = {"*****@*****.**"}

        with mock.patch.object(self.handler, 'send_post') as m:
            m.side_effect = self._send_post
            self.handler.process_message(
                ("127.0.0.2", 1000), "*****@*****.**",
                ["*****@*****.**", "*****@*****.**"], msg)
            self.assertEqual(self.ml_name_arg, 'ml-000001')
            self.assertEqual(fake_db.get_members('ml-000001'), final_members)
Пример #4
0
    def test_del_members_w_2_tos_i_admin(self):
        initial_members = {"*****@*****.**"}
        fake_db.create_ml("tenant1", 'ml-000010', "hoge", initial_members,
                          "*****@*****.**")
        msg = 'From: Test1 <*****@*****.**>\n' \
              'To: ml-000010 <*****@*****.**>, ' \
              'Test2 <*****@*****.**>\n' \
              'Subject: \n' \
              '\n' \
              'Test mail\n'
        final_members = {"*****@*****.**"}

        with mock.patch.object(self.handler, 'send_post') as m:
            m.side_effect = self._send_post
            self.handler.process_message(("127.0.0.2", 1000),
                                         "*****@*****.**",
                                         ["*****@*****.**"], msg)
            self.assertEqual(m.call_count, 0)
            self.assertEqual(fake_db.get_members('ml-000010'), final_members)
Пример #5
0
    def test_send_a_post_by_admin(self):
        ml_name = 'ml-000010'
        initial_members = {"*****@*****.**"}
        fake_db.create_ml("tenant1", ml_name, "hoge", initial_members,
                          "*****@*****.**")
        final_members = {"*****@*****.**"}

        msg = 'From: Test2 <*****@*****.**>\n' \
              'To: ml-000010 <*****@*****.**>\n' \
              'Subject: Test message\n' \
              '\n' \
              'Test mail\n'

        with mock.patch.object(self.handler, 'send_post') as m:
            m.side_effect = self._send_post
            ret = self.handler.process_message(("127.0.0.2", 1000),
                                               "*****@*****.**",
                                               ["*****@*****.**"], msg)
            self.assertEqual(self.ml_name_arg, 'ml-000010')
            self.assertEqual(fake_db.get_members('ml-000010'), final_members)