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()
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()
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)
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()