def test_with_compensation_1_mo(self): user = User.objects.create_user(username="******", password="******") premium = Generators.premium_subscription( user, "AstroBin Premium (autorenew)") ultimate = Generators.premium_subscription(user, "AstroBin Ultimate 2020+") premium.expires = date.today() + timedelta(days=30) premium.unsubscribe() premium.save() ultimate.expires = date.today() ultimate.save() self.assertTrue(is_ultimate_2020(user)) self.assertFalse(is_premium(user)) DataLossCompensationRequest.objects.create( user=user, requested_compensation="1_MO_ULTIMATE") reactivate_previous_subscription_when_ultimate_compensation_expires.apply( ) ultimate.expires = date.today() - timedelta(1) ultimate.save() self.assertFalse(is_ultimate_2020(user)) self.assertTrue(is_premium(user))
def test_without_compensation_request(self): user = User.objects.create_user(username="******", password="******") premium = Generators.premium_subscription( user, "AstroBin Premium (autorenew)") ultimate = Generators.premium_subscription(user, "AstroBin Ultimate 2020+") premium.expires = date.today() + timedelta(days=30) premium.unsubscribe() ultimate.expires = date.today() self.assertTrue(is_ultimate_2020(user)) self.assertFalse(is_premium(user)) reactivate_previous_subscription_when_ultimate_compensation_expires.apply( ) self.assertTrue(is_ultimate_2020(user)) self.assertFalse(is_premium(user))