passing first races test
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
#from __future__ import print_function
|
||||
from statements import *
|
||||
nu = datetime.datetime.now()
|
||||
from django.utils import timezone
|
||||
nu = datetime.datetime.now(tz=timezone.utc)
|
||||
|
||||
|
||||
import rowers.courses as courses
|
||||
import rowers.plannedsessions as plannedsessions
|
||||
|
||||
@override_settings(TESTING=True)
|
||||
class VirtualEventViewTest(TestCase):
|
||||
@@ -13,7 +18,7 @@ class VirtualEventViewTest(TestCase):
|
||||
gdproptin=True,gdproptindate=timezone.now(),
|
||||
rowerplan='coach')
|
||||
|
||||
self.c = Client
|
||||
self.c = Client()
|
||||
|
||||
self.user_workouts = WorkoutFactory.create_batch(5, user=self.r)
|
||||
self.factory = RequestFactory()
|
||||
@@ -22,9 +27,9 @@ class VirtualEventViewTest(TestCase):
|
||||
self.u.save()
|
||||
|
||||
# Piet
|
||||
self.upiet = UserFactory()
|
||||
self.upiet = UserFactory(username='piet')
|
||||
|
||||
self.rpiet = Rower.objects.create(user=self.u,
|
||||
self.rpiet = Rower.objects.create(user=self.upiet,
|
||||
birthdate=faker.profile()['birthdate'],
|
||||
gdproptin=True,gdproptindate=timezone.now(),
|
||||
rowerplan='basic')
|
||||
@@ -35,9 +40,9 @@ class VirtualEventViewTest(TestCase):
|
||||
self.upiet.save()
|
||||
|
||||
# Klaas
|
||||
self.uklaas = UserFactory()
|
||||
self.uklaas = UserFactory(username='klaas')
|
||||
|
||||
self.rklaas = Rower.objects.create(user=self.u,
|
||||
self.rklaas = Rower.objects.create(user=self.uklaas,
|
||||
birthdate=faker.profile()['birthdate'],
|
||||
gdproptin=True,gdproptindate=timezone.now(),
|
||||
rowerplan='basic')
|
||||
@@ -48,9 +53,9 @@ class VirtualEventViewTest(TestCase):
|
||||
self.uklaas.save()
|
||||
|
||||
# Henk
|
||||
self.uhenk = UserFactory()
|
||||
self.uhenk = UserFactory(username='henk')
|
||||
|
||||
self.rhenk = Rower.objects.create(user=self.u,
|
||||
self.rhenk = Rower.objects.create(user=self.uhenk,
|
||||
birthdate=faker.profile()['birthdate'],
|
||||
gdproptin=True,gdproptindate=timezone.now(),
|
||||
rowerplan='basic')
|
||||
@@ -65,12 +70,13 @@ class VirtualEventViewTest(TestCase):
|
||||
tomorrow = nu+datetime.timedelta(days=1)
|
||||
nextweek = nu+datetime.timedelta(days=7)
|
||||
lastweek = nu-datetime.timedelta(days=7)
|
||||
|
||||
|
||||
# erg races
|
||||
self.openergrace = VirtualRace.objects.create(
|
||||
name = faker.word(),
|
||||
startdate = tomorrow.date(),
|
||||
endddate = nextweek.date(),
|
||||
enddate = nextweek.date(),
|
||||
start_time = nu.time(),
|
||||
end_time = nu.time(),
|
||||
preferreddate = tomorrow.date(),
|
||||
@@ -90,7 +96,7 @@ class VirtualEventViewTest(TestCase):
|
||||
self.submitergrace = VirtualRace.objects.create(
|
||||
name = faker.word(),
|
||||
startdate = yesterday.date(),
|
||||
endddate = nextweek.date(),
|
||||
enddate = nextweek.date(),
|
||||
start_time = nu.time(),
|
||||
end_time = nu.time(),
|
||||
preferreddate = tomorrow.date(),
|
||||
@@ -108,7 +114,7 @@ class VirtualEventViewTest(TestCase):
|
||||
)
|
||||
|
||||
# register Piet for submitergrace
|
||||
record = IndoorVirtualRaceResult.create(
|
||||
record = IndoorVirtualRaceResult.objects.create(
|
||||
userid = self.rpiet.id,
|
||||
teamname = faker.word(),
|
||||
race = self.submitergrace,
|
||||
@@ -117,16 +123,16 @@ class VirtualEventViewTest(TestCase):
|
||||
l = self.upiet.last_name
|
||||
),
|
||||
weightcategory='hwt',
|
||||
adaptiveclass=None,
|
||||
adaptiveclass='None',
|
||||
duration=datetime.time(0,0),
|
||||
boatclass='rower',
|
||||
coursecompleted=False,
|
||||
)
|
||||
|
||||
result = add_rower_race(self.rpiet,self.submitergrace)
|
||||
result = plannedsessions.add_rower_race(self.rpiet,self.submitergrace)
|
||||
|
||||
# register Henk for submitergrace
|
||||
record = IndoorVirtualRaceResult.create(
|
||||
record = IndoorVirtualRaceResult.objects.create(
|
||||
userid = self.rhenk.id,
|
||||
teamname = faker.word(),
|
||||
race = self.submitergrace,
|
||||
@@ -135,35 +141,217 @@ class VirtualEventViewTest(TestCase):
|
||||
l = self.uhenk.last_name
|
||||
),
|
||||
weightcategory='hwt',
|
||||
adaptiveclass=None,
|
||||
adaptiveclass='None',
|
||||
duration=datetime.time(0,0),
|
||||
boatclass='rower',
|
||||
coursecompleted=False,
|
||||
)
|
||||
|
||||
result = add_rower_race(self.rhenk,self.submitergrace)
|
||||
result = plannedsessions.add_rower_race(self.rhenk,self.submitergrace)
|
||||
|
||||
# course
|
||||
|
||||
coursefile = 'rowers/tests/testdata/course_22.kml'
|
||||
coursefiletemp = 'rowers/tests/testdata/temp/course.kml'
|
||||
copy(coursefile,coursefiletemp)
|
||||
cs = courses.kmltocourse(coursefiletemp)
|
||||
for course in cs:
|
||||
cname = course['name']
|
||||
cnotes = course['description']
|
||||
polygons = course['polygons']
|
||||
|
||||
course = courses.createcourse(self.r,cname,polygons,notes=cnotes)
|
||||
|
||||
self.course = course
|
||||
|
||||
|
||||
# otw races
|
||||
self.openotwrace = VirtualRace.objects.create(
|
||||
name = faker.word(),
|
||||
startdate = tomorrow.date(),
|
||||
enddate = nextweek.date(),
|
||||
start_time = nu.time(),
|
||||
end_time = nu.time(),
|
||||
preferreddate = tomorrow.date(),
|
||||
comment = faker.text(),
|
||||
sessiontype = 'race',
|
||||
course = self.course,
|
||||
timezone = 'UTC',
|
||||
evaluation_closure = nextweek,
|
||||
registration_closure = tomorrow,
|
||||
country = self.course.country,
|
||||
manager = self.u
|
||||
)
|
||||
# course
|
||||
|
||||
self.submitotwrace = VirtualRace.objects.create(
|
||||
name = faker.word(),
|
||||
startdate = yesterday.date(),
|
||||
enddate = nextweek.date(),
|
||||
start_time = nu.time(),
|
||||
end_time = nu.time(),
|
||||
preferreddate = tomorrow.date(),
|
||||
comment = faker.text(),
|
||||
sessiontype = 'race',
|
||||
course = self.course,
|
||||
timezone = 'UTC',
|
||||
evaluation_closure = nextweek,
|
||||
registration_closure = tomorrow,
|
||||
country = self.course.country,
|
||||
manager = self.u
|
||||
)
|
||||
|
||||
# register Piet for submitotwgrace
|
||||
record = VirtualRaceResult.objects.create(
|
||||
userid = self.rpiet.id,
|
||||
teamname = faker.word(),
|
||||
race = self.submitotwrace,
|
||||
username = u'{f} {l}'.format(
|
||||
f = self.upiet.first_name,
|
||||
l = self.upiet.last_name
|
||||
),
|
||||
weightcategory='hwt',
|
||||
adaptiveclass='None',
|
||||
duration=datetime.time(0,0),
|
||||
boatclass='water',
|
||||
coursecompleted=False,
|
||||
)
|
||||
|
||||
result = plannedsessions.add_rower_race(self.rpiet,self.submitotwrace)
|
||||
|
||||
# race,with entrants, open for submission
|
||||
|
||||
|
||||
workouts
|
||||
OTW matching course
|
||||
OTW not matching course
|
||||
OTE 1k
|
||||
OTE different
|
||||
Scenarios
|
||||
races page
|
||||
set up new OTE race
|
||||
set up new otw race
|
||||
register
|
||||
withdraw
|
||||
add boat (OTW)
|
||||
submit result (OTE)
|
||||
submit result (OTW)
|
||||
standalone
|
||||
calculate course adherence
|
||||
other background jobs
|
||||
# workouts
|
||||
# OTW matching course
|
||||
result = get_random_file(filename='rowers/tests/testdata/uherskehradiste_otw.csv')
|
||||
|
||||
self.wuh_otw = WorkoutFactory(user=self.r,
|
||||
csvfilename=result['filename'],
|
||||
starttime=result['starttime'],
|
||||
startdatetime=result['startdatetime'],
|
||||
duration=result['duration'],
|
||||
distance=result['totaldist'],
|
||||
workouttype = 'water',
|
||||
)
|
||||
|
||||
# OTW not matching course
|
||||
|
||||
result = get_random_file(filename='rowers/tests/testdata/onwater2.csv')
|
||||
|
||||
self.wwater = WorkoutFactory(user=self.r,
|
||||
csvfilename=result['filename'],
|
||||
starttime=result['starttime'],
|
||||
startdatetime=result['startdatetime'],
|
||||
duration=result['duration'],
|
||||
distance=result['totaldist'],
|
||||
workouttype = 'water',
|
||||
)
|
||||
|
||||
|
||||
|
||||
# OTE 1k
|
||||
|
||||
result = get_random_file(filename='rowers/tests/testdata/duzend_ote.csv')
|
||||
|
||||
self.wduzend_r = WorkoutFactory(user=self.r,
|
||||
csvfilename=result['filename'],
|
||||
starttime=nu.time(),
|
||||
startdatetime=nu,
|
||||
duration=result['duration'],
|
||||
distance=result['totaldist'],
|
||||
workouttype = 'rower',
|
||||
)
|
||||
|
||||
|
||||
# Piet
|
||||
result = get_random_file(filename='rowers/tests/testdata/duzend_ote.csv')
|
||||
|
||||
self.wduzend_rpiet = WorkoutFactory(user=self.rpiet,
|
||||
csvfilename=result['filename'],
|
||||
starttime=nu.time(),
|
||||
startdatetime=nu,
|
||||
duration=result['duration'],
|
||||
distance=result['totaldist'],
|
||||
workouttype = 'rower',
|
||||
)
|
||||
|
||||
|
||||
# Klaas
|
||||
result = get_random_file(filename='rowers/tests/testdata/duzend_ote.csv')
|
||||
|
||||
self.wduzend_rklaas = WorkoutFactory(user=self.rklaas,
|
||||
csvfilename=result['filename'],
|
||||
starttime=nu.time(),
|
||||
startdatetime=nu,
|
||||
duration=result['duration'],
|
||||
distance=result['totaldist'],
|
||||
workouttype = 'rower',
|
||||
)
|
||||
|
||||
|
||||
# Henk
|
||||
result = get_random_file(filename='rowers/tests/testdata/duzend_ote.csv')
|
||||
|
||||
self.wduzend_rhenk = WorkoutFactory(user=self.rhenk,
|
||||
csvfilename=result['filename'],
|
||||
starttime=nu.time(),
|
||||
startdatetime=nu,
|
||||
duration=result['duration'],
|
||||
distance=result['totaldist'],
|
||||
workouttype = 'rower',
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
# OTE different
|
||||
result = get_random_file()
|
||||
self.wother_rpiet = WorkoutFactory(user=self.rpiet,
|
||||
csvfilename=result['filename'],
|
||||
starttime=nu.time(),
|
||||
startdatetime=nu,
|
||||
duration=result['duration'],
|
||||
distance=result['totaldist'],
|
||||
workouttype='rower',
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
try:
|
||||
os.remove('rowers/tests/testdata/temp/course.kml')
|
||||
except (WindowsError, OSError, IOError):
|
||||
pass
|
||||
|
||||
|
||||
|
||||
|
||||
#Scenarios
|
||||
|
||||
# races page
|
||||
def test_races_view(self):
|
||||
login = self.c.login(username=self.u.username, password=self.password)
|
||||
self.assertTrue(login)
|
||||
|
||||
url = reverse('virtualevents_view')
|
||||
response = self.c.get(url)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
|
||||
# set up new OTE race
|
||||
|
||||
# set up new otw race
|
||||
|
||||
# register
|
||||
|
||||
# withdraw
|
||||
|
||||
# add boat (OTW)
|
||||
|
||||
# submit result (OTE)
|
||||
|
||||
# submit result (OTW)
|
||||
|
||||
# standalone
|
||||
# calculate course adherence
|
||||
# other background jobs
|
||||
|
||||
|
||||
Reference in New Issue
Block a user