removing wind, setpower, stream
This commit is contained in:
@@ -778,59 +778,7 @@ class PredictedPieceFormNoDistance(forms.Form):
|
||||
value = forms.FloatField(initial=10, label='Free ranking piece')
|
||||
|
||||
|
||||
# On the Geeky side, to update stream information for river dwellers
|
||||
class UpdateStreamForm(forms.Form):
|
||||
unitchoices = (
|
||||
('m', 'm/s'),
|
||||
('f', 'foot/s'),
|
||||
('k', 'knots'),
|
||||
('p', 'pace difference (sec/500m)'),
|
||||
)
|
||||
dist1 = forms.FloatField(initial=0, label='Distance 1')
|
||||
dist2 = forms.FloatField(initial=1000, label='Distance 2')
|
||||
stream1 = forms.FloatField(initial=0, label='Stream velocity 1')
|
||||
stream2 = forms.FloatField(initial=0, label='Stream velocity 2')
|
||||
streamunit = forms.ChoiceField(required=True,
|
||||
choices=unitchoices,
|
||||
initial='m',
|
||||
label='Unit')
|
||||
|
||||
class Meta:
|
||||
fields = ['dist1', 'dist2', 'stream1', 'stream2', 'streamunit']
|
||||
|
||||
# add wind information to your workout
|
||||
|
||||
|
||||
class UpdateWindForm(forms.Form):
|
||||
unitchoices = (
|
||||
('m', 'm/s'),
|
||||
('k', 'knots'),
|
||||
('b', 'beaufort'),
|
||||
('kmh', 'km/h'),
|
||||
('mph', 'miles/hour'),
|
||||
)
|
||||
dist1 = forms.FloatField(initial=0, label='Distance 1')
|
||||
dist2 = forms.FloatField(initial=1000, label='Distance 2')
|
||||
vwind1 = forms.FloatField(initial=0, required=False, label='Wind Speed 1')
|
||||
vwind2 = forms.FloatField(initial=0, required=False, label='Wind Speed 2')
|
||||
windunit = forms.ChoiceField(required=True,
|
||||
choices=unitchoices,
|
||||
initial='m',
|
||||
label='Unit')
|
||||
winddirection1 = forms.IntegerField(initial=0, required=False,
|
||||
label='Wind Direction 1')
|
||||
winddirection2 = forms.IntegerField(initial=0, required=False,
|
||||
label='Wind Direction 2')
|
||||
|
||||
class Meta:
|
||||
fields = ['dist1', 'dist2',
|
||||
'vwind1', 'vwind2',
|
||||
'windunit',
|
||||
'winddirection1', 'winddirection2']
|
||||
|
||||
# Form to select a data range to show workouts from a certain time period
|
||||
|
||||
|
||||
class DateRangeForm(forms.Form):
|
||||
startdate = forms.DateField(
|
||||
initial=timezone.now()-datetime.timedelta(days=365),
|
||||
|
||||
@@ -371,10 +371,6 @@ class WorkoutViewTest(TestCase):
|
||||
response = self.c.get(url,follow=True)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
url = reverse('workout_downloadwind_view',kwargs={
|
||||
'id': encoder.encode_hex(self.wwater.id),
|
||||
}
|
||||
)
|
||||
|
||||
response = self.c.get(url,follow=True)
|
||||
self.assertEqual(response.status_code,200)
|
||||
@@ -459,122 +455,9 @@ class WorkoutViewTest(TestCase):
|
||||
status_code=302,target_status_code=200)
|
||||
|
||||
|
||||
@patch('rowers.dataprep.create_engine')
|
||||
@patch('rowers.dataprep.getsmallrowdata_db')
|
||||
def test_windform(self, mocked_sqlalchemy, mocked_getsmallrowdata_db):
|
||||
login = self.c.login(username=self.u.username, password=self.password)
|
||||
self.assertTrue(login)
|
||||
|
||||
|
||||
url = reverse('workout_wind_view',kwargs={'id':encoder.encode_hex(self.wwater.id)})
|
||||
|
||||
response = self.c.get(url)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
form_data = {
|
||||
'dist1':1000,
|
||||
'dist2':2000,
|
||||
'vwind1':2.0,
|
||||
'vwind2':1.4,
|
||||
'windunit':'m',
|
||||
'winddirection1': 0,
|
||||
'winddirection2': 90,
|
||||
}
|
||||
|
||||
form = UpdateWindForm(form_data)
|
||||
self.assertTrue(form.is_valid())
|
||||
|
||||
response = self.c.post(url,form_data)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
@patch('rowers.dataprep.create_engine')
|
||||
@patch('rowers.dataprep.getsmallrowdata_db')
|
||||
def test_streamform(self, mocked_sqlalchemy, mocked_getsmallrowdata_db):
|
||||
login = self.c.login(username=self.u.username, password=self.password)
|
||||
self.assertTrue(login)
|
||||
|
||||
|
||||
url = reverse('workout_stream_view',kwargs={'id':encoder.encode_hex(self.wwater.id)})
|
||||
|
||||
response = self.c.get(url)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
form_data = {
|
||||
'dist1':1000,
|
||||
'dist2':2000,
|
||||
'stream1':2.0,
|
||||
'stream2':1.4,
|
||||
'streamunit':'m',
|
||||
}
|
||||
|
||||
form = UpdateStreamForm(form_data)
|
||||
self.assertTrue(form.is_valid())
|
||||
|
||||
response = self.c.post(url,form_data)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
|
||||
|
||||
@patch('rowers.dataprep.create_engine')
|
||||
@patch('rowers.dataprep.getsmallrowdata_db')
|
||||
@patch('rowers.middleware.myqueue')
|
||||
def test_setpowerform(self, mocked_sqlalchemy, mocked_getsmallrowdata_db,
|
||||
mocked_myqueue):
|
||||
login = self.c.login(username=self.u.username, password=self.password)
|
||||
self.assertTrue(login)
|
||||
|
||||
url = reverse('instroke_view',kwargs={'id':encoder.encode_hex(self.winstroke.id)})
|
||||
|
||||
response = self.c.get(url)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
rowdata = rowingdata.rowingdata(csvfile=self.winstroke.csvfilename)
|
||||
instrokemetrics = rowdata.get_instroke_columns()
|
||||
|
||||
self.assertTrue(len(instrokemetrics)>0)
|
||||
|
||||
url = reverse('instroke_chart',
|
||||
kwargs={
|
||||
'id':encoder.encode_hex(self.winstroke.id),
|
||||
'metric':instrokemetrics[0],
|
||||
})
|
||||
url2 = reverse(self.r.defaultlandingpage,kwargs={'id':encoder.encode_hex(self.winstroke.id)})
|
||||
response = self.c.get(url)
|
||||
self.assertRedirects(response,
|
||||
expected_url=url2,
|
||||
status_code=302,target_status_code=200)
|
||||
|
||||
@patch('rowers.dataprep.create_engine')
|
||||
@patch('rowers.dataprep.getsmallrowdata_db')
|
||||
def test_setpowerform(self, mocked_sqlalchemy, mocked_getsmallrowdata_db):
|
||||
login = self.c.login(username=self.u.username, password=self.password)
|
||||
self.assertTrue(login)
|
||||
|
||||
|
||||
url = reverse('workout_otwsetpower_view',kwargs={'id':encoder.encode_hex(self.wwater.id)})
|
||||
|
||||
response = self.c.get(url)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
form_data = {
|
||||
'quick_calc':True,
|
||||
'boattype': '1x',
|
||||
'weightvalue': 75.0,
|
||||
'boatbrand':'maas',
|
||||
}
|
||||
|
||||
form = AdvancedWorkoutForm(form_data)
|
||||
self.assertTrue(form.is_valid())
|
||||
|
||||
response = self.c.post(url,form_data,follow=True)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
expected_url = reverse('workout_edit_view',kwargs={'id':encoder.encode_hex(self.wwater.id)})
|
||||
|
||||
self.assertRedirects(response,
|
||||
expected_url=expected_url,
|
||||
status_code=302,target_status_code=200)
|
||||
|
||||
@patch('rowers.dataprep.create_engine')
|
||||
@patch('rowers.dataprep.getsmallrowdata_db')
|
||||
def test_commentview(self, mocked_sqlalchemy, mocked_getsmallrowdata_db):
|
||||
|
||||
@@ -154,7 +154,6 @@ class URLTests(TestCase):
|
||||
'/rowers/workout/'+encoded1+'/get-thumbnails/',
|
||||
'/rowers/workout/'+encoded1+'/image/',
|
||||
'/rowers/workout/'+encoded1+'/instroke/',
|
||||
'/rowers/workout/'+encoded1+'/interactiveotwplot/',
|
||||
'/rowers/workout/'+encoded1+'/map/',
|
||||
'/rowers/workout/'+encoded1+'/recalcsummary/',
|
||||
'/rowers/workout/'+encoded1+'/restore/',
|
||||
|
||||
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
Binary file not shown.
@@ -136,9 +136,9 @@ from rowers.forms import (
|
||||
FitnessMetricForm, PredictedPieceFormNoDistance,
|
||||
EmailForm, RegistrationForm, RegistrationFormTermsOfService,
|
||||
RegistrationFormUniqueEmail, RegistrationFormSex,
|
||||
CNsummaryForm, UpdateWindForm,
|
||||
CNsummaryForm,
|
||||
StandardsForm,
|
||||
UpdateStreamForm, WorkoutMultipleCompareForm, ChartParamChoiceForm,
|
||||
WorkoutMultipleCompareForm, ChartParamChoiceForm,
|
||||
FusionMetricChoiceForm, BoxPlotChoiceForm, MultiFlexChoiceForm,
|
||||
TrendFlexModalForm, WorkoutSplitForm, WorkoutJoinParamForm,
|
||||
AnalysisOptionsForm, AnalysisChoiceForm,
|
||||
|
||||
Reference in New Issue
Block a user