getting tests to pass
This commit is contained in:
181
rowers/tests/atest_newusers.py
Normal file
181
rowers/tests/atest_newusers.py
Normal file
@@ -0,0 +1,181 @@
|
||||
from __future__ import absolute_import
|
||||
from __future__ import division
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals
|
||||
|
||||
#from __future__ import print_function
|
||||
from .statements import *
|
||||
|
||||
nu = datetime.datetime.now()
|
||||
|
||||
#@pytest.mark.django_db
|
||||
@override_settings(TESTING=True)
|
||||
class NewUserRegistrationTest(TestCase):
|
||||
def setUp(self):
|
||||
self.c = Client()
|
||||
redis_connection.publish('tasks','KILL')
|
||||
|
||||
def tearDown(self):
|
||||
try:
|
||||
os.remove('rowsandall_workouts_2018-01-01_2019-01-01.csv')
|
||||
except:
|
||||
pass
|
||||
|
||||
@patch('rowers.dataprep.workout_summary_to_df',side_effect=mock_workout_summaries)
|
||||
def test_newuser(self,mock_workout_summaries):
|
||||
form_data = {
|
||||
'first_name':'Jan',
|
||||
'last_name':'Roeiert',
|
||||
'email':'jan@loop.nl',
|
||||
'username':'janderoeiert',
|
||||
'password1':'Aapindewei2',
|
||||
'password2':'Aapindewei2',
|
||||
'url': '',
|
||||
'tos':True,
|
||||
'weightcategory':'hwt',
|
||||
'adaptiveclass': 'None',
|
||||
'sex':'male',
|
||||
'next':'/rowers/list-workouts',
|
||||
'birthdate':datetime.datetime(year=1970,month=4,day=2)
|
||||
}
|
||||
|
||||
form = RegistrationFormSex(form_data)
|
||||
self.assertTrue(form.is_valid())
|
||||
|
||||
response = self.c.post('/rowers/register/', form_data, follow=True)
|
||||
self.assertEqual(response.status_code,200)
|
||||
|
||||
# set opt-in
|
||||
user = User.objects.get(username='janderoeiert')
|
||||
user.rower.gdpr_optin = True
|
||||
user.rower.ftpset = True
|
||||
user.set_password('Aapindewei2')
|
||||
user.is_active = True
|
||||
user.save()
|
||||
user.rower.save()
|
||||
|
||||
login = self.c.login(username=user.username,password='Aapindewei2')
|
||||
self.assertTrue(login)
|
||||
|
||||
|
||||
url = '/rowers/list-workouts/'
|
||||
|
||||
response = self.c.get(url)
|
||||
|
||||
expected = '/rowers/me/gdpr-optin/?next=/rowers/list-workouts/'
|
||||
|
||||
self.assertRedirects(response,
|
||||
expected_url=expected,
|
||||
status_code=302,target_status_code=200)
|
||||
|
||||
url = '/rowers/me/gdpr-optin-confirm/?next=/rowers/list-workouts/'
|
||||
|
||||
response = self.c.get(url)
|
||||
|
||||
expected = '/rowers/list-workouts/'
|
||||
self.assertRedirects(response,
|
||||
expected_url=expected,
|
||||
status_code=302,target_status_code=200)
|
||||
|
||||
|
||||
url = '/rowers/exportallworkouts/'
|
||||
|
||||
response = self.c.get(url,follow=True)
|
||||
|
||||
|
||||
self.assertTrue(response.status_code,200)
|
||||
|
||||
|
||||
form_data = {
|
||||
'startdate':'2018-01-01',
|
||||
'enddate':'2019-01-01'
|
||||
}
|
||||
|
||||
response = self.c.post(url,form_data)
|
||||
|
||||
self.assertTrue(response.status_code,200)
|
||||
|
||||
|
||||
|
||||
url = '/rowers/me/delete/'
|
||||
|
||||
form_data = {
|
||||
'delete_user':True,
|
||||
}
|
||||
|
||||
response = self.c.post(url,form_data,follow=True)
|
||||
self.assertRedirects(response,
|
||||
expected_url='/login/',
|
||||
status_code=302,target_status_code=200)
|
||||
|
||||
@patch('rowers.dataprep.workout_summary_to_df',side_effect=mock_workout_summaries)
|
||||
def test_newuser_false(self,mock_workout_summaries):
|
||||
form_data = {
|
||||
'first_name':'Jan',
|
||||
'last_name':'Roeiert',
|
||||
'email':'jan@loop.nl',
|
||||
'username':'janderoeiert',
|
||||
'password1':'aapindewei2',
|
||||
'password2':'aapindewei2',
|
||||
'tos':True,
|
||||
'url': '',
|
||||
'weightcategory':'hwt',
|
||||
'adaptiveclass': 'None',
|
||||
'sex':'male',
|
||||
'next':'/rowers/list-workouts',
|
||||
'birthdate':datetime.datetime(year=1970,month=4,day=2)
|
||||
}
|
||||
|
||||
form = RegistrationFormSex(form_data)
|
||||
self.assertFalse(form.is_valid())
|
||||
|
||||
@patch('rowers.dataprep.workout_summary_to_df',side_effect=mock_workout_summaries)
|
||||
def test_newuser_honeypot(self,mock_workout_summaries):
|
||||
form_data = {
|
||||
'first_name':'Jan',
|
||||
'last_name':'Roeiert',
|
||||
'email':'jan@loop.nl',
|
||||
'username':'janderoeiert',
|
||||
'password1':'Aapindewei2',
|
||||
'password2':'Aapindewei2',
|
||||
'url': 'http://example.com',
|
||||
'tos':True,
|
||||
'weightcategory':'hwt',
|
||||
'adaptiveclass': 'None',
|
||||
'sex':'male',
|
||||
'next':'/rowers/list-workouts',
|
||||
'birthdate':datetime.datetime(year=1970,month=4,day=2)
|
||||
}
|
||||
|
||||
form = RegistrationFormSex(form_data)
|
||||
self.assertFalse(form.is_valid())
|
||||
|
||||
# still post it, should redirect to the registration page
|
||||
response = self.c.post('/rowers/register/', form_data, follow=True)
|
||||
self.assertEqual(response.status_code,200)
|
||||
self.assertRedirects(response,
|
||||
expected_url='/rowers/register/',
|
||||
status_code=302,target_status_code=200)
|
||||
|
||||
@patch('rowers.dataprep.workout_summary_to_df',side_effect=mock_workout_summaries)
|
||||
def test_newuser_disposable(self,mock_workout_summaries):
|
||||
form_data = {
|
||||
'first_name':'Jan',
|
||||
'last_name':'Roeiert',
|
||||
'email':'jan@powerscrews.com',
|
||||
'username':'janderoeiert',
|
||||
'password1':'Aapindewei2',
|
||||
'password2':'Aapindewei2',
|
||||
'url': '',
|
||||
'tos':True,
|
||||
'weightcategory':'hwt',
|
||||
'adaptiveclass': 'None',
|
||||
'sex':'male',
|
||||
'next':'/rowers/list-workouts',
|
||||
'birthdate':datetime.datetime(year=1970,month=4,day=2)
|
||||
}
|
||||
|
||||
form = RegistrationFormSex(form_data)
|
||||
self.assertFalse(form.is_valid())
|
||||
|
||||
|
||||
Reference in New Issue
Block a user