Private
Public Access
1
0

make it pass tests (planviews)

This commit is contained in:
Sander Roosendaal
2020-01-14 21:25:19 +01:00
parent abb7b85f74
commit 5482e52238
4 changed files with 15 additions and 12 deletions

View File

@@ -85,7 +85,7 @@ def is_plantrial(user):
except AttributeError: except AttributeError:
return False return False
if r.rowerplan == 'basic': if r.rowerplan in ['basic','pro']:
return r.plantrialexpires >= datetime.date.today() return r.plantrialexpires >= datetime.date.today()
if r.rowerplan == 'freecoach': if r.rowerplan == 'freecoach':
if r.mycoachgroup is not None: if r.mycoachgroup is not None:

View File

@@ -6,7 +6,8 @@ from __future__ import unicode_literals
from .statements import * from .statements import *
nu = datetime.datetime.now() nu = datetime.datetime.now()
from rowers.views import hasplannedsessions,iscoachmember,ispromember from rowers.views import isplanmember,iscoachmember,ispromember
from rowers.rower_rules import *
class TrialsTest(TestCase): class TrialsTest(TestCase):
def setUp(self): def setUp(self):
@@ -33,34 +34,35 @@ class TrialsTest(TestCase):
pass pass
def test_basictrial(self): def test_basictrial(self):
self.assertEqual(hasplannedsessions(self.u),False) self.assertEqual(isplanmember(self.u),False)
self.assertEqual(iscoachmember(self.u),False) self.assertEqual(iscoachmember(self.u),False)
self.assertEqual(ispromember(self.u),False) self.assertEqual(ispromember(self.u),False)
self.r.protrialexpires = (nu+datetime.timedelta(days=10)).date() self.r.protrialexpires = (nu+datetime.timedelta(days=10)).date()
self.r.save() self.r.save()
self.assertEqual(hasplannedsessions(self.u),False) self.assertEqual(isplanmember(self.u),False)
self.assertEqual(iscoachmember(self.u),False) self.assertEqual(iscoachmember(self.u),False)
self.assertEqual(ispromember(self.u),True) self.assertEqual(ispromember(self.u),True)
self.r.plantrialexpires = (nu+datetime.timedelta(days=10)).date() self.r.plantrialexpires = (nu+datetime.timedelta(days=10)).date()
self.r.save() self.r.save()
self.assertEqual(hasplannedsessions(self.u),True) self.assertEqual(isplanmember(self.u),True)
self.assertEqual(iscoachmember(self.u),False) self.assertEqual(iscoachmember(self.u),False)
self.assertEqual(ispromember(self.u),True) self.assertEqual(ispromember(self.u),True)
def test_protrial(self): def test_protrial(self):
self.r.rowerplan = 'pro' self.r.rowerplan = 'pro'
self.r.save() self.r.save()
self.assertEqual(hasplannedsessions(self.u),False) self.assertEqual(isplanmember(self.u),False)
self.assertEqual(iscoachmember(self.u),False) self.assertEqual(iscoachmember(self.u),False)
self.assertEqual(ispromember(self.u),True) self.assertEqual(ispromember(self.u),True)
self.r.plantrialexpires = (nu+datetime.timedelta(days=10)).date() self.r.plantrialexpires = (nu+datetime.timedelta(days=10)).date()
self.r.save() self.r.save()
self.assertEqual(hasplannedsessions(self.u),True) self.assertEqual(is_plantrial(self.u),True)
self.assertEqual(isplanmember(self.u),True)
self.assertEqual(iscoachmember(self.u),False) self.assertEqual(iscoachmember(self.u),False)
self.assertEqual(ispromember(self.u),True) self.assertEqual(ispromember(self.u),True)

View File

@@ -869,7 +869,7 @@ def plannedsession_teamedit_view(request,
url = reverse(plannedsession_teamedit_view, url = reverse(plannedsession_teamedit_view,
kwargs = { kwargs = {
'sessionid':sessionid, 'id':id,
}) })
startdatestring = startdate.strftime('%Y-%m-%d') startdatestring = startdate.strftime('%Y-%m-%d')
@@ -1491,7 +1491,7 @@ def plannedsession_teamclone_view(request,id=0):
url = reverse(plannedsession_teamedit_view, url = reverse(plannedsession_teamedit_view,
kwargs = { kwargs = {
'sessionid':ps.id, 'id':ps.id,
'userid':r.user.id, 'userid':r.user.id,
} }
) )
@@ -1557,7 +1557,7 @@ def plannedsession_edit_view(request,id=0,userid=0):
if ps.team.all() or ps.rower.all().count()>1: if ps.team.all() or ps.rower.all().count()>1:
url = reverse(plannedsession_teamedit_view, url = reverse(plannedsession_teamedit_view,
kwargs={ kwargs={
'sessionid':id, 'id':id,
}) })
return HttpResponseRedirect(url) return HttpResponseRedirect(url)
@@ -1910,7 +1910,6 @@ class PlannedSessionDelete(DeleteView):
message="This functionality requires a Coach or Self-Coach plan", message="This functionality requires a Coach or Self-Coach plan",
redirect_field_name=None) redirect_field_name=None)
def rower_create_trainingplan(request,userid=0): def rower_create_trainingplan(request,userid=0):
therower = getrequestrower(request,userid=userid) therower = getrequestrower(request,userid=userid)
theuser = therower.user theuser = therower.user
themanager = getrower(request.user) themanager = getrower(request.user)
@@ -2349,7 +2348,7 @@ def rower_trainingplan_execution_view(request,
@user_passes_test(isplanmember,login_url="/rowers/paidplans", @user_passes_test(isplanmember,login_url="/rowers/paidplans",
message="This functionality requires a Coach or Self-Coach plan", message="This functionality requires a Coach or Self-Coach plan",
redirect_field_name=None) redirect_field_name=None)
@permission_required('plan.can_view',fn=get_plan_by_pk,raise_exception=True) @permission_required('plan.view_plan',fn=get_plan_by_pk,raise_exception=True)
def rower_trainingplan_view(request, def rower_trainingplan_view(request,
id=0, id=0,
userid=0, userid=0,
@@ -2361,6 +2360,7 @@ def rower_trainingplan_view(request,
startdate,enddate = get_dates_timeperiod(request) startdate,enddate = get_dates_timeperiod(request)
plan = get_object_or_404(TrainingPlan,pk=id) plan = get_object_or_404(TrainingPlan,pk=id)
r = getrequestrower(request,userid=userid)
createmacrofillers(plan) createmacrofillers(plan)
macrocycles = TrainingMacroCycle.objects.filter( macrocycles = TrainingMacroCycle.objects.filter(

View File

@@ -43,6 +43,7 @@ from rowers.rower_rules import (
is_workout_user,isplanmember,can_delete_session, is_workout_user,isplanmember,can_delete_session,
can_view_target,can_change_target,can_delete_target, can_view_target,can_change_target,can_delete_target,
can_view_plan,can_change_plan,can_delete_plan, can_view_plan,can_change_plan,can_delete_plan,
can_view_cycle,can_change_cycle,can_delete_cycle
) )
from django.shortcuts import render from django.shortcuts import render