Private
Public Access
1
0

Merge branch 'feature/testcoverage3' into develop

This commit is contained in:
Sander Roosendaal
2019-01-23 17:03:13 +01:00
7 changed files with 80 additions and 56 deletions
+3
View File
@@ -224,6 +224,9 @@ class MockStravalibClient():
## Higher level - unfortunately didn't succeed in mocking the gateway ## Higher level - unfortunately didn't succeed in mocking the gateway
def get_client_token(*args, **kwargs):
return "aap"
def mock_create_customer(*args, **kwargs): def mock_create_customer(*args, **kwargs):
return 121 return 121
-32
View File
@@ -11,38 +11,6 @@ import rowers.dataprep as dataprep
class UserFactory(factory.DjangoModelFactory):
class Meta:
model = User
email = faker.email()
username = faker.profile()['username']
first_name = faker.name().split(' ')[0]
last_name = faker.name().split(' ')[0]
class WorkoutFactory(factory.DjangoModelFactory):
class Meta:
model = Workout
name = factory.LazyAttribute(lambda _: faker.word())
notes = faker.text()
startdatetime = row.rowdatetime
starttime = workoutstarttime
workouttype='water'
date=timezone.now().date()
duration=duration
distance=totaldist
csvfilename=filename
rankingpiece = False
class SessionFactory(factory.DjangoModelFactory):
class Meta:
model = PlannedSession
name = factory.LazyAttribute(lambda _: faker.word())
comment = faker.text()
class OTWCPChartTest(TestCase): class OTWCPChartTest(TestCase):
def setUp(self): def setUp(self):
self.u = UserFactory() self.u = UserFactory()
+2 -1
View File
@@ -54,7 +54,8 @@ class PaymentTest(TestCase):
# settings.DEBUG = False # settings.DEBUG = False
@patch('rowers.views.braintreestuff.create_customer',side_effect=mock_create_customer) @patch('rowers.views.braintreestuff.create_customer',side_effect=mock_create_customer)
def test_billing_view(self,mocked_create_customer): @patch('rowers.views.braintreestuff.gateway',side_effect=MockBraintreeGateway)
def test_billing_view(self,mocked_create_customer,mocked_gateway):
u = UserFactory() u = UserFactory()
r = Rower.objects.create(user=u, r = Rower.objects.create(user=u,
birthdate=faker.profile()['birthdate'], birthdate=faker.profile()['birthdate'],
@@ -13,7 +13,7 @@ class TeamFactory(factory.DjangoModelFactory):
private = 'open' private = 'open'
viewing = 'allmembers' viewing = 'allmembers'
class TeamCreateTest(TestCase): class TeamTest(TestCase):
def setUp(self): def setUp(self):
redis_connection.publish('tasks','KILL') redis_connection.publish('tasks','KILL')
self.user_passwords = [] self.user_passwords = []
@@ -61,6 +61,20 @@ class TeamCreateTest(TestCase):
self.t = TeamFactory(manager=self.u) self.t = TeamFactory(manager=self.u)
# need to set up some requests for testing (they are not good below) # need to set up some requests for testing (they are not good below)
self.invite = TeamInvite(
team = self.t,
user = self.users[1],
code = 'abcde',
email = self.users[1].email
)
self.invite.save()
self.rekwest = TeamRequest(
team = self.t,
user = self.users[2],
code ='abcde'
)
self.rekwest.save()
def tearDown(self): def tearDown(self):
for csvfilename in self.csvfilenames: for csvfilename in self.csvfilenames:
@@ -106,8 +120,6 @@ class TeamCreateTest(TestCase):
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
def test_teamsview(self): def test_teamsview(self):
id, result = create_request(self.t,self.users[2].id)
id, comment = create_invite(self.t,self.u,user=self.users[1])
url = '/rowers/me/teams/' url = '/rowers/me/teams/'
@@ -149,8 +161,6 @@ class TeamCreateTest(TestCase):
self.assertIn(response.status_code,[200,302]) self.assertIn(response.status_code,[200,302])
def test_teamsview_manager(self): def test_teamsview_manager(self):
id, result = create_request(self.t,self.users[2].id)
id, comment = create_invite(self.t,self.u,user=self.users[1])
url = '/rowers/me/teams/' url = '/rowers/me/teams/'
@@ -174,12 +184,12 @@ class TeamCreateTest(TestCase):
def test_teamview_member_request(self): def test_teamview_member_request(self):
login = self.c.login(username=self.users[1].username, password = self.user_passwords[1]) login = self.c.login(username=self.users[3].username, password = self.user_passwords[3])
self.assertTrue(login) self.assertTrue(login)
url = '/rowers/team/{t}/requestmembership/{u}/'.format( url = '/rowers/team/{t}/requestmembership/{u}/'.format(
t=self.t.id, t=self.t.id,
u=self.users[1].id) u=self.users[3].id)
response = self.c.get(url,follow=True) response = self.c.get(url,follow=True)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -188,13 +198,10 @@ class TeamCreateTest(TestCase):
expected_url='/rowers/team/{t}/'.format(t=self.t.id), expected_url='/rowers/team/{t}/'.format(t=self.t.id),
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
id, result = create_request(self.t,self.users[2].id)
self.assertTrue(id != 0)
login = self.c.login(username=self.users[2].username, password = self.user_passwords[2]) login = self.c.login(username=self.users[2].username, password = self.user_passwords[2])
self.assertTrue(login) self.assertTrue(login)
url = '/rowers/me/invitation/{id}/revoke/'.format(id=id) url = '/rowers/me/request/{id}/revoke/'.format(id=self.rekwest.id)
self.assertRedirects(response, self.assertRedirects(response,
expected_url='/rowers/team/{t}/'.format(t=self.t.id), expected_url='/rowers/team/{t}/'.format(t=self.t.id),
status_code=302,target_status_code=200) status_code=302,target_status_code=200)
@@ -202,13 +209,11 @@ class TeamCreateTest(TestCase):
response = self.c.get(url,follow=True) response = self.c.get(url,follow=True)
self.assertEqual(response.status_code,200) self.assertEqual(response.status_code,200)
id, result = create_request(self.t,self.users[2].id) def test_teamview_manager_request(self):
self.assertTrue(id != 0)
login = self.c.login(username=self.u.username, password = self.password) login = self.c.login(username=self.u.username, password = self.password)
self.assertTrue(login) self.assertTrue(login)
url = '/rowers/me/invitation/{id}/reject/'.format(id=id) url = '/rowers/me/request/{id}/reject/'.format(id=self.rekwest.id)
response = self.c.get(url,follow=True) response = self.c.get(url,follow=True)
self.assertEqual(response.status_code,200) self.assertEqual(response.status_code,200)
self.assertRedirects(response, self.assertRedirects(response,
@@ -231,6 +236,60 @@ class TeamCreateTest(TestCase):
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
class TeamTestLowLevel(TestCase):
def setUp(self):
redis_connection.publish('tasks','KILL')
self.user_passwords = []
usernames = [
'user1',
'user2',
'user3',
'user4',
'user5',
'user6',
]
self.users = []
self.csvfilenames = []
for i in range(6):
u = UserFactory(username=usernames[i])
self.users.append(u)
r = Rower.objects.create(
birthdate=faker.profile()['birthdate'],
gdproptin=True,
gdproptindate=timezone.now(),
rowerplan='coach',
user=u,
clubsize=3
)
r.save()
password = faker.word()
u.set_password(password)
u.save()
self.user_passwords.append(password)
workouts = WorkoutFactory.create_batch(5, user=r)
for w in workouts:
self.csvfilenames.append(w.csvfilename)
self.c = Client()
self.u = self.users[0]
self.password = self.user_passwords[0]
self.t = TeamFactory(manager=self.u)
def tearDown(self):
for csvfilename in self.csvfilenames:
try:
os.remove(csvfilename)
except (IOError, WindowsError):
pass
def test_lowlevel_update_team(self): def test_lowlevel_update_team(self):
id, comment = update_team(self.t,faker.word(),self.u,'open',faker.text(),'allmembers') id, comment = update_team(self.t,faker.word(),self.u,'open',faker.text(),'allmembers')
Binary file not shown.
+1 -1
View File
@@ -2502,7 +2502,7 @@
</Trackpoint> </Trackpoint>
</Track> </Track>
</Lap> </Lap>
<Notes>&lt;Element 'Notes' at 0x11aaf780&gt;</Notes> <Notes>&lt;Element 'Notes' at 0x13f67128&gt;</Notes>
</Activity> </Activity>
</Activities> </Activities>
<Creator> <Creator>
-7
View File
@@ -13537,13 +13537,6 @@ def rower_update_empower_view(
except Rower.DoesNotExist: except Rower.DoesNotExist:
raise Http404("Rower doesn't exist") raise Http404("Rower doesn't exist")
# if 'startdate' in request.session:
# startdate = iso8601.parse_date(request.session['startdate'])
# if 'enddate' in request.session:
# enddate = iso8601.parse_date(request.session['enddate'])
if request.method == 'POST' and 'daterange' in request.POST: if request.method == 'POST' and 'daterange' in request.POST:
dateform = DateRangeForm(request.POST) dateform = DateRangeForm(request.POST)
if dateform.is_valid(): if dateform.is_valid():