def setUp(self, *args, **kwargs):
        # Create 3 newsletters
        self.newsletter = Factory.newsletter()
        # Create 5-10 subscribers for each

        # Create 5-15 people not subscribed to either

        super(TestSendToNewsletter, self).setUp(*args, **kwargs)
Exemplo n.º 2
0
    def setUp(self, *args, **kwargs):
        # Create 2 banned users
        # Create 3
        self.newsletter = Factory.newsletter()
        # Create 5-10 subscribers for each

        # Create 5-15 people not subscribed to either

        super(TestPurchaserImport, self).setUp(*args, **kwargs)
Exemplo n.º 3
0
 def setUp(self, *args, **kwargs):
     self.newsletter = Factory.newsletter()
     super(TestPostSubscribes, self).setUp(*args, **kwargs)
Exemplo n.º 4
0
 def setUp(self, *args, **kwargs):
     self.newsletter = Factory.newsletter()
     super(TestHistoricalEvent, self).setUp(*args, **kwargs)
Exemplo n.º 5
0
 def setUp(self, *args, **kwargs):
     self.newsletter = Factory.newsletter()
     super(TestWelcomeEmail, self).setUp(*args, **kwargs)
Exemplo n.º 6
0
 def setUp(self, *args, **kwargs):
     self.newsletter = Factory.newsletter()
     super(TestRenderingBasics, self).setUp(*args, **kwargs)
Exemplo n.º 7
0
    def test_unsubscribe_resubscribe_has_records_of_all_actions(self):
        self.newsletter = Factory.newsletter()
        self.assertEquals(HistoricalEvent.objects.count(), 0)
        email = Factory.rand_email()
        name = Factory.rand_name()
        subscription_url = Factory.rand_url()
        response = self.post(
            reverse('inkmail:subscribe', ),
            {
                'first_name': name,
                'email': email,
                'newsletter': self.newsletter.internal_name,
                'subscription_url': subscription_url,
            },
        )

        self.assertEquals(response.status_code, 200)

        self.assertEquals(Person.objects.count(), 1)
        self.assertEquals(Subscription.objects.count(), 1)
        p = Person.objects.all()[0]
        s = Subscription.objects.all()[0]

        self.assertEquals(HistoricalEvent.objects.count(), 1)
        he = HistoricalEvent.objects.order_by("-created_at").all()[0]
        self.assertEquals(he.event_type, "subscribed")
        self.assertEquals(he.event_creator_type, "person")
        self.assertEquals(he.event_creator_pk, p.pk)
        self.assertHistoricalEventDataEquality(
            he,
            person=p,
            event_type="subscribed",
            newsletter=self.newsletter,
            subscription=s,
        )

        # Unsubscribe
        om = OutgoingMessage.objects.all()[0]
        self.get(om.unsubscribe_link)

        s = Subscription.objects.get(pk=s.pk)
        self.assertEquals(HistoricalEvent.objects.count(), 2)
        he = HistoricalEvent.objects.order_by("-created_at").all()[0]
        self.assertEquals(he.event_type, "unsubscribe")
        self.assertEquals(he.event_creator_type, "person")
        self.assertEquals(he.event_creator_pk, p.pk)
        self.assertHistoricalEventDataEquality(
            he,
            person=p,
            event_type="unsubscribe",
            subscription=s,
            outgoingmessage=om,
        )

        # Fetch updated subscription
        s = Subscription.objects.get(pk=s.pk)

        # Re-subscribe
        name = Factory.rand_name()
        subscription_url = Factory.rand_url()
        response = self.post(
            reverse('inkmail:subscribe', ),
            {
                'first_name': name,
                'email': p.email,
                'newsletter': self.newsletter.internal_name,
                'subscription_url': subscription_url,
            },
        )
        self.assertEquals(response.status_code, 200)
        s = Subscription.objects.get(pk=s.pk)
        p = Person.objects.get(pk=p.pk)

        self.assertEquals(HistoricalEvent.objects.count(), 3)
        he = HistoricalEvent.objects.order_by("-created_at").all()[0]
        self.assertEquals(he.event_type, "subscribed")
        self.assertEquals(he.event_creator_type, "person")
        self.assertEquals(he.event_creator_pk, p.pk)
        self.assertHistoricalEventDataEquality(
            he,
            person=p,
            event_type="subscribed",
            newsletter=self.newsletter,
            subscription=s,
        )

        process_outgoing_message_queue()

        # Re-double-opt-in
        self.get(s.opt_in_link)

        s = Subscription.objects.get(pk=s.pk)
        p = Person.objects.get(pk=p.pk)

        self.assertEquals(HistoricalEvent.objects.count(), 4)
        he = HistoricalEvent.objects.order_by("-created_at").all()[0]
        self.assertEquals(he.event_type, "double-opt-in")
        self.assertEquals(he.event_creator_type, "person")
        self.assertEquals(he.event_creator_pk, p.pk)
        self.assertHistoricalEventDataEquality(
            he,
            person=p,
            event_type="double-opt-in",
            newsletter=self.newsletter,
            subscription=s,
        )
Exemplo n.º 8
0
 def setUp(self, *args, **kwargs):
     self.newsletter = Factory.newsletter()
     super(TestUnsubscribeBasics, self).setUp(*args, **kwargs)
Exemplo n.º 9
0
 def setUp(self, *args, **kwargs):
     self.newsletter = Factory.newsletter()
     super(TestDoubleOptIn, self).setUp(*args, **kwargs)