diff --git a/rowers/tests/mocks.py b/rowers/tests/mocks.py
index ecde94c8..64d0b882 100644
--- a/rowers/tests/mocks.py
+++ b/rowers/tests/mocks.py
@@ -224,6 +224,9 @@ class MockStravalibClient():
## Higher level - unfortunately didn't succeed in mocking the gateway
+def get_client_token(*args, **kwargs):
+ return "aap"
+
def mock_create_customer(*args, **kwargs):
return 121
diff --git a/rowers/tests/test_cpchart.py b/rowers/tests/test_cpchart.py
index d7bebf18..8aded64d 100644
--- a/rowers/tests/test_cpchart.py
+++ b/rowers/tests/test_cpchart.py
@@ -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):
def setUp(self):
self.u = UserFactory()
diff --git a/rowers/tests/test_payments.py b/rowers/tests/test_payments.py
index 69bc2b37..61a9e5c6 100644
--- a/rowers/tests/test_payments.py
+++ b/rowers/tests/test_payments.py
@@ -54,7 +54,8 @@ class PaymentTest(TestCase):
# settings.DEBUG = False
@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()
r = Rower.objects.create(user=u,
birthdate=faker.profile()['birthdate'],
diff --git a/rowers/tests/test_teams.py b/rowers/tests/test_team.py
similarity index 81%
rename from rowers/tests/test_teams.py
rename to rowers/tests/test_team.py
index 3b7614e4..161d5325 100644
--- a/rowers/tests/test_teams.py
+++ b/rowers/tests/test_team.py
@@ -13,7 +13,7 @@ class TeamFactory(factory.DjangoModelFactory):
private = 'open'
viewing = 'allmembers'
-class TeamCreateTest(TestCase):
+class TeamTest(TestCase):
def setUp(self):
redis_connection.publish('tasks','KILL')
self.user_passwords = []
@@ -61,6 +61,20 @@ class TeamCreateTest(TestCase):
self.t = TeamFactory(manager=self.u)
# 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):
for csvfilename in self.csvfilenames:
@@ -106,8 +120,6 @@ class TeamCreateTest(TestCase):
self.assertEqual(response.status_code, 200)
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/'
@@ -149,8 +161,6 @@ class TeamCreateTest(TestCase):
self.assertIn(response.status_code,[200,302])
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/'
@@ -174,12 +184,12 @@ class TeamCreateTest(TestCase):
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)
url = '/rowers/team/{t}/requestmembership/{u}/'.format(
t=self.t.id,
- u=self.users[1].id)
+ u=self.users[3].id)
response = self.c.get(url,follow=True)
self.assertEqual(response.status_code, 200)
@@ -188,13 +198,10 @@ class TeamCreateTest(TestCase):
expected_url='/rowers/team/{t}/'.format(t=self.t.id),
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])
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,
expected_url='/rowers/team/{t}/'.format(t=self.t.id),
status_code=302,target_status_code=200)
@@ -202,13 +209,11 @@ class TeamCreateTest(TestCase):
response = self.c.get(url,follow=True)
self.assertEqual(response.status_code,200)
- id, result = create_request(self.t,self.users[2].id)
- self.assertTrue(id != 0)
-
+ def test_teamview_manager_request(self):
login = self.c.login(username=self.u.username, password = self.password)
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)
self.assertEqual(response.status_code,200)
self.assertRedirects(response,
@@ -231,6 +236,60 @@ class TeamCreateTest(TestCase):
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):
id, comment = update_team(self.t,faker.word(),self.u,'open',faker.text(),'allmembers')
diff --git a/rowers/tests/testdata/testdata.csv.gz b/rowers/tests/testdata/testdata.csv.gz
index 8e35d372..a67f9afc 100644
Binary files a/rowers/tests/testdata/testdata.csv.gz and b/rowers/tests/testdata/testdata.csv.gz differ
diff --git a/rowers/tests/testdata/testdata.tcx b/rowers/tests/testdata/testdata.tcx
index f49f35e9..57cf726e 100644
--- a/rowers/tests/testdata/testdata.tcx
+++ b/rowers/tests/testdata/testdata.tcx
@@ -2502,7 +2502,7 @@
- <Element 'Notes' at 0x11aaf780>
+ <Element 'Notes' at 0x13f67128>
diff --git a/rowers/views.py b/rowers/views.py
index 06645727..9ca1329c 100644
--- a/rowers/views.py
+++ b/rowers/views.py
@@ -13537,13 +13537,6 @@ def rower_update_empower_view(
except Rower.DoesNotExist:
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:
dateform = DateRangeForm(request.POST)
if dateform.is_valid():