Merge branch 'release/v18.6.1'
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -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={
|
||||
|
||||
Reference in New Issue
Block a user