fixing races
This commit is contained in:
@@ -2885,8 +2885,11 @@ class PlannedSession(models.Model):
|
||||
if self.sessionvalue <= 0: # pragma: no cover
|
||||
self.sessionvalue = 1
|
||||
|
||||
is_virtualevent = kwargs.pop('is_virtualevent', False)
|
||||
|
||||
# manager = self.manager
|
||||
if self.sessiontype not in ['race', 'indoorrace']:
|
||||
#if self.sessiontype not in ['race', 'indoorrace']:
|
||||
if not is_virtualevent:
|
||||
if not can_add_session(self.manager):
|
||||
raise ValidationError(
|
||||
"You must be a Self-Coach user or higher to create a planned session"
|
||||
@@ -3108,6 +3111,8 @@ class VirtualRace(PlannedSession):
|
||||
if self.evaluation_closure < enddatetime: # pragma: no cover
|
||||
self.evaluation_closure = enddatetime + timezone.timedelta(days=1)
|
||||
|
||||
kwargs['is_virtualevent'] = True
|
||||
|
||||
super(VirtualRace, self).save(*args, **kwargs)
|
||||
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ import rowers.courses as courses
|
||||
import rowers.tasks as tasks
|
||||
from rowers.views.racesviews import *
|
||||
from rowers.utils import calculate_age
|
||||
from rowers.views import addmanual_view, virtualevent_compare_view
|
||||
from rowers.views import addmanual_view, virtualevent_compare_view, virtualevent_create_view, fastestvirtualevent_create_view
|
||||
|
||||
from django.contrib.messages.storage.fallback import FallbackStorage
|
||||
from django.contrib.sessions.middleware import SessionMiddleware
|
||||
@@ -469,6 +469,62 @@ class ChallengesTest(TestCase):
|
||||
|
||||
self.assertEqual(response.status_code, 200)
|
||||
|
||||
@patch('django.contrib.gis.geoip2.GeoIP2.city', side_effect=mocked_requests)
|
||||
def test_fastestrace_create_view(self, mock_get):
|
||||
self.u.rower.rowerplan = 'basic'
|
||||
self.u.rower.save()
|
||||
login = self.c.login(username=self.u.username, password=self.password)
|
||||
self.assertTrue(login)
|
||||
|
||||
url = reverse('fastestvirtualevent_create_view')
|
||||
response = self.c.get(url)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
|
||||
startdate = arrow.get(datetime.datetime.now()-datetime.timedelta(days=1)).datetime.date()
|
||||
start_time = timezone.now().time()
|
||||
enddate = startdate+datetime.timedelta(days=5)
|
||||
end_time = start_time
|
||||
evaluation_closure = startdate+datetime.timedelta(days=6)
|
||||
registration_closure = evaluation_closure
|
||||
|
||||
|
||||
form_data = {
|
||||
'name': 'test 2',
|
||||
'startdate': startdate.strftime("%Y-%m-%d"),
|
||||
'initial-startdate': startdate.strftime("%Y-%m-%d"),
|
||||
'start_time': '13:12:14',
|
||||
'enddate': enddate.strftime("%Y-%m-%d"),
|
||||
'initial-enddate': enddate.strftime("%Y-%m-%d"),
|
||||
'end_time': '13:12:16',
|
||||
'timezone': 'US/Pacific',
|
||||
'sessionvalue': '2000',
|
||||
'sessionunit': 'm',
|
||||
'registration_form': 'manual',
|
||||
'registration_closure_0': registration_closure.strftime("%Y-%m-%d"),
|
||||
'registration_closure_1': registration_closure.strftime("%H:%M:%S"),
|
||||
'evaluation_closure_0': evaluation_closure.strftime("%Y-%m-%d"),
|
||||
'evaluation_closure_1': evaluation_closure.strftime("%H:%M:%S"),
|
||||
'comment': 'no comment',
|
||||
'coursestandards': '',
|
||||
'contact_phone': '+3164805181',
|
||||
'contact_email': 'test@rowsandall.com',
|
||||
}
|
||||
|
||||
|
||||
form = IndoorVirtualRaceForm(form_data)
|
||||
if not form.is_valid():
|
||||
print(form.cleaned_data)
|
||||
print(form.errors)
|
||||
self.assertTrue(form.is_valid())
|
||||
|
||||
response = self.c.post(url, form_data, follow=True)
|
||||
|
||||
expected_url = reverse('virtualevents_view')
|
||||
|
||||
self.assertRedirects(response, expected_url=expected_url, status_code=302, target_status_code=200)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
|
||||
@patch('django.contrib.gis.geoip2.GeoIP2.city', side_effect=mocked_requests)
|
||||
def test_fastestrace_view(self, mock_get):
|
||||
login = self.c.login(username=self.u.username, password=self.password)
|
||||
|
||||
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
Binary file not shown.
Reference in New Issue
Block a user