Private
Public Access
1
0

Merge branch 'release/v18.6.1'

This commit is contained in:
Sander Roosendaal
2022-08-10 10:37:53 +02:00
2 changed files with 74 additions and 0 deletions

View File

@@ -1260,6 +1260,18 @@ class PlannedSessionsView(TestCase):
self.u2.set_password(self.password2)
self.u2.save()
self.u3 = UserFactory(username='testbasicuser2')
self.r3 = Rower.objects.create(user=self.u3,
birthdate=faker.profile()['birthdate'],
gdproptin=True,surveydone=True,
gdproptindate=timezone.now(),
rowerplan='basic')
self.password3 = faker.word()
self.u3.set_password(self.password2)
self.u3.save()
self.team = Team.objects.create(
name = faker.word(),
notes = faker.text(),
@@ -1763,6 +1775,64 @@ description: ""
response = self.c.post(url,formdata,follow=True)
self.assertEqual(response.status_code,200)
def test_team_multiclone_view(self):
login = self.c.login(username=self.u.username, password=self.password)
self.assertTrue(login)
# add rower r3 to team
self.r3.team.add(self.team)
self.r3.save()
# r3 has no sessions
ps_r3 = PlannedSession.objects.filter(rower__in=[self.r3])
self.assertEqual(ps_r3.count(),0)
# check if self.ps_trimp is a "self.team" session
self.assertTrue(self.team in self.ps_trimp.team.all())
# clone self.ps_trimp to new
url = '/rowers/sessions/multiclone/'
response = self.c.get(url)
self.assertEqual(response.status_code,200)
formdata = {
'startdate':self.startdate,
'enddate':self.enddate,
}
form = DateRangeForm(formdata)
self.assertTrue(form.is_valid())
response = self.c.post(url,formdata)
self.assertEqual(response.status_code,200)
url = '/rowers/sessions/multiclone/?startdate={startdate}&enddate={enddate}'.format(
startdate = self.startdate,
enddate = self.enddate
)
formdata = {
'plannedsessions':[self.ps_time.id,self.ps_trimp.id],
'shiftstartdate':datetime.date.today()+timezone.timedelta(days=6)
}
form = PlannedSessionMultipleCloneForm(formdata)
self.assertTrue(form.is_valid())
form = SessionDateShiftForm(formdata)
self.assertTrue(form.is_valid())
response = self.c.post(url,formdata,follow=True)
self.assertEqual(response.status_code,200)
# check that the self.ps_trimp copy is assigned to r3
ps_r3 = PlannedSession.objects.filter(rower__in=[self.r3])
self.assertEqual(ps_r3.count(),1)
def test_deletetarget_view(self):
login = self.c.login(username=self.u.username, password=self.password)
self.assertTrue(login)

View File

@@ -318,6 +318,8 @@ def plannedsession_multiclone_view(
add_rower_session(rower, ps)
for team in teams:
add_team_session(team, ps)
for rower in team.rower.all().exclude(rowerplan='freecoach'):
add_rower_session(rower, ps)
startdatestring = shiftstartdate.strftime('%Y-%m-%d')
enddatestring = lastdate.strftime('%Y-%m-%d')
@@ -1856,6 +1858,8 @@ def plannedsession_clone_view(request, id=0, userid=0):
add_rower_session(r, ps)
for team in teams:
add_team_session(team, ps)
for rower in team.rower.all().exclude(rowerplan='freecoach'):
add_rower_session(rower, ps)
url = reverse(plannedsession_edit_view,
kwargs={