Ejemplo n.º 1
0
    def test_users_to_unsubscribe_multi_pages(self, MockList):
        '''
            If CM returns a list of subscribers, we should get a list of
            email addresses that appear in their list,
        '''
        def random_subscribers(page=1, *args, **kwargs):
            unknown = Mock(EmailAddress='subscriber{}@example.com'.format(
                random.random()),
                           autospec=Subscriber)
            known = Mock(EmailAddress='*****@*****.**', autospec=Subscriber)
            return Mock(NumberOfPages=3,
                        PageNumber=page,
                        Results=[unknown, known])

        MockList().active.side_effect = random_subscribers
        results = users_to_unsubscribe('1', [])
        self.assertEqual(type(results), list)
        self.assertEqual(len(results), 6)
        for subscriber in results:
            self.assertEqual(type(subscriber), str)
            self.assertIn('@', subscriber)
        results = users_to_unsubscribe('1', ['*****@*****.**'])
        self.assertEqual(type(results), list)
        self.assertEqual(len(results), 6)
        results = users_to_unsubscribe('1', ['*****@*****.**'])
        self.assertEqual(type(results), list)
        self.assertEqual(len(results), 3)
Ejemplo n.º 2
0
    def test_users_to_unsubscribe_multi_pages(self, MockList):
        '''
            If CM returns a list of subscribers, we should get a list of
            email addresses that appear in their list,
        '''
        def random_subscribers(page=1, *args, **kwargs):
            unknown = Mock(EmailAddress='subscriber{}@example.com'.format(random.random()), autospec=Subscriber)
            known = Mock(EmailAddress='*****@*****.**', autospec=Subscriber)
            return Mock(NumberOfPages=3,
                        PageNumber=page,
                        Results=[unknown, known])

        MockList().active.side_effect = random_subscribers
        results = users_to_unsubscribe('1', [])
        self.assertEqual(type(results), list)
        self.assertEqual(len(results), 6)
        for subscriber in results:
            self.assertEqual(type(subscriber), str)
            self.assertIn('@', subscriber)
        results = users_to_unsubscribe('1', ['*****@*****.**'])
        self.assertEqual(type(results), list)
        self.assertEqual(len(results), 6)
        results = users_to_unsubscribe('1', ['*****@*****.**'])
        self.assertEqual(type(results), list)
        self.assertEqual(len(results), 3)
Ejemplo n.º 3
0
 def test_users_to_unsubscribe_empty(self, MockList):
     '''
         If CM returns no subscribers, we should get an empty list.
     '''
     MockList().active.return_value = Mock(NumberOfPages=0, Results=[])
     results = users_to_unsubscribe('1', [])
     self.assertEqual(type(results), list)
     self.assertEqual(len(results), 0)
Ejemplo n.º 4
0
 def test_users_to_unsubscribe_empty(self, MockList):
     '''
         If CM returns no subscribers, we should get an empty list.
     '''
     MockList().active.return_value = Mock(NumberOfPages=0, Results=[])
     results = users_to_unsubscribe('1', [])
     self.assertEqual(type(results), list)
     self.assertEqual(len(results), 0)
Ejemplo n.º 5
0
 def test_users_to_unsubscribe_one_page(self, MockList):
     '''
         If CM returns a list of subscribers, we should get a list of
         email addresses that appear in their list,
     '''
     s1 = Mock(EmailAddress='*****@*****.**', autospec=Subscriber)
     s2 = Mock(EmailAddress='*****@*****.**', autospec=Subscriber)
     MockList().active.return_value = Mock(NumberOfPages=1,
                                           PageNumber=1,
                                           Results=[s1, s2])
     results = users_to_unsubscribe('1', [])
     self.assertEqual(type(results), list)
     self.assertEqual(len(results), 2)
     for subscriber in results:
         self.assertEqual(type(subscriber), str)
         self.assertIn('@', subscriber)
     results = users_to_unsubscribe('1', ['*****@*****.**'])
     self.assertEqual(type(results), list)
     self.assertEqual(len(results), 2)
     results = users_to_unsubscribe('1', ['*****@*****.**'])
     self.assertEqual(type(results), list)
     self.assertEqual(len(results), 1)
Ejemplo n.º 6
0
 def test_users_to_unsubscribe_one_page(self, MockList):
     '''
         If CM returns a list of subscribers, we should get a list of
         email addresses that appear in their list,
     '''
     s1 = Mock(EmailAddress='*****@*****.**', autospec=Subscriber)
     s2 = Mock(EmailAddress='*****@*****.**', autospec=Subscriber)
     MockList().active.return_value = Mock( NumberOfPages=1,
                                            PageNumber=1,
                                            Results=[s1, s2] )
     results = users_to_unsubscribe('1', [])
     self.assertEqual(type(results), list)
     self.assertEqual(len(results), 2)
     for subscriber in results:
         self.assertEqual(type(subscriber), str)
         self.assertIn('@', subscriber)
     results = users_to_unsubscribe('1', ['*****@*****.**'])
     self.assertEqual(type(results), list)
     self.assertEqual(len(results), 2)
     results = users_to_unsubscribe('1', ['*****@*****.**'])
     self.assertEqual(type(results), list)
     self.assertEqual(len(results), 1)