adding test and fixing get_dates_timeperiod
This commit is contained in:
@@ -706,6 +706,7 @@ def get_team(request):
|
|||||||
def get_dates_timeperiod(request,startdatestring='',enddatestring='',
|
def get_dates_timeperiod(request,startdatestring='',enddatestring='',
|
||||||
defaulttimeperiod='thisweek'):
|
defaulttimeperiod='thisweek'):
|
||||||
# set start end date according timeperiod
|
# set start end date according timeperiod
|
||||||
|
# should always return datetime.date
|
||||||
|
|
||||||
timeperiod = request.GET.get('when')
|
timeperiod = request.GET.get('when')
|
||||||
|
|
||||||
@@ -720,8 +721,8 @@ def get_dates_timeperiod(request,startdatestring='',enddatestring='',
|
|||||||
startdate = dt.datetime.strptime(startdatestring,'%Y-%m-%d').date()
|
startdate = dt.datetime.strptime(startdatestring,'%Y-%m-%d').date()
|
||||||
enddate = dt.datetime.strptime(enddatestring,'%Y-%m-%d').date()
|
enddate = dt.datetime.strptime(enddatestring,'%Y-%m-%d').date()
|
||||||
except ValueError:
|
except ValueError:
|
||||||
startdate = parser.parse(startdatestring,fuzzy=True)
|
startdate = parser.parse(startdatestring,fuzzy=True).date()
|
||||||
enddate = parser.parse(enddatestring, fuzzy=True)
|
enddate = parser.parse(enddatestring, fuzzy=True).date()
|
||||||
|
|
||||||
return startdate,enddate
|
return startdate,enddate
|
||||||
|
|
||||||
|
|||||||
@@ -11,11 +11,26 @@ from django.http import Http404
|
|||||||
|
|
||||||
from rowers.views import get_workout
|
from rowers.views import get_workout
|
||||||
|
|
||||||
|
class TestDateTime(TestCase):
|
||||||
|
def setUp(self):
|
||||||
|
self.factory = RequestFactory()
|
||||||
|
|
||||||
|
def tearDown(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def test_get_dates(self):
|
||||||
|
request = self.factory.get('/rowers/sessions/create/user/230/?startdate=13.01.2020&enddate=19.01.2020')
|
||||||
|
startdate,enddate = get_dates_timeperiod(request)
|
||||||
|
|
||||||
|
teststart = datetime.date(2020,1,1)
|
||||||
|
self.assertTrue(teststart<startdate)
|
||||||
|
|
||||||
|
|
||||||
# tests simple functions from views.py
|
# tests simple functions from views.py
|
||||||
class SimpleViewTest(TestCase):
|
class SimpleViewTest(TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.u = UserFactory()
|
self.u = UserFactory()
|
||||||
|
|
||||||
self.r = Rower.objects.create(user=self.u,
|
self.r = Rower.objects.create(user=self.u,
|
||||||
birthdate=faker.profile()['birthdate'],
|
birthdate=faker.profile()['birthdate'],
|
||||||
gdproptin=True,
|
gdproptin=True,
|
||||||
@@ -36,11 +51,11 @@ class SimpleViewTest(TestCase):
|
|||||||
except (IOError, FileNotFoundError,OSError):
|
except (IOError, FileNotFoundError,OSError):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
def test_getrequestrower(self):
|
def test_getrequestrower(self):
|
||||||
user_no_rower = UserFactory(username='norower')
|
user_no_rower = UserFactory(username='norower')
|
||||||
user_no_rower.set_password(faker.word())
|
user_no_rower.set_password(faker.word())
|
||||||
|
|
||||||
|
|
||||||
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)
|
||||||
@@ -75,7 +90,7 @@ class SimpleViewTest(TestCase):
|
|||||||
self.assertRedirects(response,
|
self.assertRedirects(response,
|
||||||
expected_url='/rowers/email/',
|
expected_url='/rowers/email/',
|
||||||
status_code=302,target_status_code=200)
|
status_code=302,target_status_code=200)
|
||||||
|
|
||||||
|
|
||||||
def test_getworkout(self):
|
def test_getworkout(self):
|
||||||
with assert_raises(Http404):
|
with assert_raises(Http404):
|
||||||
@@ -108,7 +123,3 @@ class SimpleViewTest(TestCase):
|
|||||||
|
|
||||||
login = self.c.login(username=self.u.username, password=self.password)
|
login = self.c.login(username=self.u.username, password=self.password)
|
||||||
self.assertEqual(login,False)
|
self.assertEqual(login,False)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user