diff --git a/rowers/templates/paidplans.html b/rowers/templates/paidplans.html
index 3ad4c821..280ff45d 100644
--- a/rowers/templates/paidplans.html
+++ b/rowers/templates/paidplans.html
@@ -199,6 +199,10 @@
+ {% elif rower and rower.rowerplan == 'pro' and rower.plantrialexpires|date_dif == 1 %}
+
{% else %}
{% endif %}
diff --git a/rowers/tests/test_rowerplans.py b/rowers/tests/test_rowerplans.py
new file mode 100644
index 00000000..e9be5c6d
--- /dev/null
+++ b/rowers/tests/test_rowerplans.py
@@ -0,0 +1,64 @@
+from statements import *
+nu = datetime.datetime.now()
+
+from rowers.views import hasplannedsessions,iscoachmember,ispromember
+
+class TrialsTest(TestCase):
+ def setUp(self):
+ self.u = UserFactory()
+
+ self.r = Rower.objects.create(user=self.u,
+ birthdate=faker.profile()['birthdate'],
+ gdproptin=True,
+ gdproptindate=timezone.now(),
+ rowerplan='basic')
+
+ self.c = Client()
+ self.user_workouts = WorkoutFactory.create_batch(5, user=self.r)
+ self.factory = RequestFactory()
+ self.password = faker.word()
+ self.u.set_password(self.password)
+ self.u.save()
+
+ def tearDown(self):
+ for workout in self.user_workouts:
+ try:
+ os.remove(workout.csvfilename)
+ except (IOError, WindowsError):
+ pass
+
+ def test_basictrial(self):
+ self.assertEqual(hasplannedsessions(self.u),False)
+ self.assertEqual(iscoachmember(self.u),False)
+ self.assertEqual(ispromember(self.u),False)
+
+ self.r.protrialexpires = (nu+datetime.timedelta(days=10)).date()
+ self.r.save()
+
+ self.assertEqual(hasplannedsessions(self.u),False)
+ self.assertEqual(iscoachmember(self.u),False)
+ self.assertEqual(ispromember(self.u),True)
+
+ self.r.plantrialexpires = (nu+datetime.timedelta(days=10)).date()
+ self.r.save()
+
+ self.assertEqual(hasplannedsessions(self.u),True)
+ self.assertEqual(iscoachmember(self.u),False)
+ self.assertEqual(ispromember(self.u),True)
+
+ def test_protrial(self):
+ self.r.rowerplan = 'pro'
+ self.r.save()
+ self.assertEqual(hasplannedsessions(self.u),False)
+ self.assertEqual(iscoachmember(self.u),False)
+ self.assertEqual(ispromember(self.u),True)
+
+ self.r.plantrialexpires = (nu+datetime.timedelta(days=10)).date()
+ self.r.save()
+
+ self.assertEqual(hasplannedsessions(self.u),True)
+ self.assertEqual(iscoachmember(self.u),False)
+ self.assertEqual(ispromember(self.u),True)
+
+
+
diff --git a/rowers/tests/testdata/testdata.csv.gz b/rowers/tests/testdata/testdata.csv.gz
index ad38adb5..240d00f2 100644
Binary files a/rowers/tests/testdata/testdata.csv.gz and b/rowers/tests/testdata/testdata.csv.gz differ
diff --git a/rowers/tests/testdata/testdata.tcx b/rowers/tests/testdata/testdata.tcx
index aad5afb6..97a085f7 100644
--- a/rowers/tests/testdata/testdata.tcx
+++ b/rowers/tests/testdata/testdata.tcx
@@ -2502,7 +2502,7 @@
- <Element 'Notes' at 0x1f6b6c18>
+ <Element 'Notes' at 0x15216240>
diff --git a/rowers/views.py b/rowers/views.py
index d92f71dd..4ebd4374 100644
--- a/rowers/views.py
+++ b/rowers/views.py
@@ -1027,7 +1027,7 @@ def hasplannedsessions(user):
result = user.is_authenticated() and (r.rowerplan=='coach' or r.rowerplan=='plan')
if not result and r.plantrialexpires:
- result = user.is_authenticated() and r.rowerplan=='basic' and r.plantrialexpires >= datetime.date.today()
+ result = user.is_authenticated() and r.plantrialexpires >= datetime.date.today()
else:
result = False