compute_end count day by day now (not month by month like before) to allow 6 weeks cotiz

This commit is contained in:
Soldat
2018-09-01 17:45:13 +02:00
parent f78d8e1d95
commit 7a1b9bd412
6 changed files with 140 additions and 100 deletions

View File

@ -92,7 +92,7 @@ class SubscriptionUnitTest(TestCase):
d = Subscription.compute_end(duration=0.33)
self.assertTrue(d == date(2015, 11, 18))
d = Subscription.compute_end(duration=0.67)
self.assertTrue(d == date(2016, 1, 18))
self.assertTrue(d == date(2016, 1, 19))
d = Subscription.compute_end(duration=0.5)
self.assertTrue(d == date(2015, 12, 18))
@ -135,7 +135,17 @@ class SubscriptionIntegrationTest(TestCase):
s.subscription_end = s.compute_end(duration=0.67,
start=s.subscription_start)
s.save()
self.assertTrue(s.subscription_end == date(2017, 12, 29))
self.assertTrue(s.subscription_end == date(2017, 12, 30))
def test_duration_six_weeks(self):
s = Subscription(member=User.objects.filter(pk=self.user.pk).first(), subscription_type=list(settings.SITH_SUBSCRIPTIONS.keys())[3],
payment_method=settings.SITH_SUBSCRIPTION_PAYMENT_METHOD[0])
s.subscription_start = date(2018, 9, 1)
s.subscription_end = s.compute_end(duration=0.23,
start=s.subscription_start)
s.save()
self.assertTrue(s.subscription_end == date(2018, 10, 13))
@mock.patch('subscription.models.date', FakeDate)
def test_dates_sliding_with_subscribed_user(self):
@ -150,6 +160,8 @@ class SubscriptionIntegrationTest(TestCase):
date_mock_today(2016, 8, 25)
d = Subscription.compute_end(duration=settings.SITH_SUBSCRIPTIONS['deux-semestres']['duration'],
user=user)
self.assertTrue(d == date(2017, 8, 29))
@mock.patch('subscription.models.date', FakeDate)