diff --git a/sith/settings.py b/sith/settings.py index 437f558f..5e91ea6b 100644 --- a/sith/settings.py +++ b/sith/settings.py @@ -512,6 +512,11 @@ SITH_SUBSCRIPTIONS = { 'name': _('Six weeks for free'), 'price': 0, 'duration': 0.23, + }, + 'un-jour': { + 'name': _('Un jour'), + 'price': 0, + 'duration': 0.00555333, } # To be completed.... } diff --git a/subscription/migrations/0009_auto_20180920_1421.py b/subscription/migrations/0009_auto_20180920_1421.py new file mode 100644 index 00000000..4d975dcd --- /dev/null +++ b/subscription/migrations/0009_auto_20180920_1421.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.15 on 2018-09-20 12:21 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('subscription', '0008_auto_20180831_2016'), + ] + + operations = [ + migrations.AlterField( + model_name='subscription', + name='subscription_type', + field=models.CharField(choices=[('amicale/doceo', 'Amicale/DOCEO member'), ('assidu', 'Assidu member'), ('benevoles-euroks', "Eurok's volunteer"), ('crous', 'CROUS member'), ('cursus-alternant', 'Alternating cursus'), ('cursus-branche', 'Branch cursus'), ('cursus-tronc-commun', 'Common core cursus'), ('deux-mois-essai', 'Two months for free'), ('deux-semestres', 'Two semesters'), ('membre-honoraire', 'Honorary member'), ('reseau-ut', 'UT network member'), ('sbarro/esta', 'Sbarro/ESTA member'), ('six-semaines-essai', 'Six weeks for free'), ('un-jour', 'Un jour'), ('un-semestre', 'One semester'), ('un-semestre-welcome', 'One semester Welcome Week')], max_length=255, verbose_name='subscription type'), + ), + ] diff --git a/subscription/tests.py b/subscription/tests.py index 20bead75..6003df62 100644 --- a/subscription/tests.py +++ b/subscription/tests.py @@ -117,6 +117,16 @@ class SubscriptionIntegrationTest(TestCase): s.save() self.assertTrue(s.subscription_end == date(2017, 10, 29)) + def test_duration_two_months(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(2017, 8, 29) + s.subscription_end = s.compute_end(duration=settings.SITH_SUBSCRIPTIONS['un-jour']['duration'], + start=s.subscription_start) + s.save() + self.assertTrue(s.subscription_end == date(2017, 8, 30)) + def test_duration_three_months(self): s = Subscription(member=User.objects.filter(pk=self.user.pk).first(), subscription_type=list(settings.SITH_SUBSCRIPTIONS.keys())[3],