def test_subscription_validity(self):
        with self.settings(PREMIUM_ENABLED=True):
            u = User.objects.create_user(username='******',
                                         email='*****@*****.**',
                                         password='******')
            g, created = Group.objects.get_or_create(name="astrobin_premium")
            s, created = Subscription.objects.get_or_create(
                name="Test subscription", price=1, group=g, category="premium")
            us, created = UserSubscription.objects.get_or_create(
                user=u, subscription=s)

            us.subscribe()

            self.assertEqual(valid_subscriptions(u), [s])
            self.assertEqual(has_valid_subscription(u, s.pk), True)
            self.assertEqual(has_valid_subscription_in_category(u, "premium"),
                             True)
            self.assertEqual(get_premium_subscription_expiration(u),
                             us.expires)
            self.assertEqual(has_subscription_by_name(u, "Test subscription"),
                             True)
            self.assertEqual(get_subscription_by_name(u, "Test subscription"),
                             us)

            us.delete()
            s.delete()
            g.delete()
            u.delete()
示例#2
0
    def test_subscription_validity(self):
        with self.settings(PREMIUM_ENABLED = True):
            u = User.objects.create_user(
                username = '******', email='*****@*****.**', password = '******')
            g, created = Group.objects.get_or_create(name = "astrobin_premium")
            s, created = Subscription.objects.get_or_create(
                name = "Test subscription",
                price = 1,
                group = g,
                category = "premium")
            us, created = UserSubscription.objects.get_or_create(
                user = u,
                subscription = s)

            us.subscribe()

            self.assertEqual(valid_subscriptions(u), [s])
            self.assertEqual(has_valid_subscription(u, s.pk), True)
            self.assertEqual(
                has_valid_subscription_in_category(u, "premium"), True)
            self.assertEqual(
                get_premium_subscription_expiration(u), us.expires)
            self.assertEqual(
                has_subscription_by_name(u, "Test subscription"), True)
            self.assertEqual(
                get_subscription_by_name(u, "Test subscription"), us)

            us.delete()
            s.delete()
            g.delete()
            u.delete()
示例#3
0
    def test_create_post_premium(self):
        # Premium members have a free pass
        g, created = Group.objects.get_or_create(name="astrobin_premium")
        s, created = Subscription.objects.get_or_create(
            name="AstroBin Premium", price=1, group=g, category="premium")
        us, created = UserSubscription.objects.get_or_create(user=self.user,
                                                             subscription=s)

        us.subscribe()
        self.assertEqual(has_valid_subscription(self.user, s.pk), True)

        form = self._get_post_form()
        post, topic = form.save(commit=False)

        self.assertEqual(post.on_moderation, False)
示例#4
0
    def test_create_post_premium(self):
        # Premium members have a free pass
        g, created = Group.objects.get_or_create(name = "astrobin_premium")
        s, created = Subscription.objects.get_or_create(
            name = "AstroBin Premium",
            price = 1,
            group = g,
            category = "premium")
        us, created = UserSubscription.objects.get_or_create(
            user = self.user,
            subscription = s)

        us.subscribe()
        self.assertEqual(has_valid_subscription(self.user, s.pk), True)

        form = self._get_post_form()
        post, topic = form.save(commit = False)

        self.assertEqual(post.on_moderation, False)

        us.delete()
        s.delete()
        g.delete()