[fedocal] master: pep8 run on test_meeting (ccaee24)
by Pierre-YvesChibon
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit ccaee24838abb422d17277725f81b3be07aad657
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Sat Nov 24 17:24:55 2012 +0100
pep8 run on test_meeting
>---------------------------------------------------------------
fedocal/tests/test_meeting.py | 20 ++++++++++----------
1 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/fedocal/tests/test_meeting.py b/fedocal/tests/test_meeting.py
index 3f3a14a..5bd4496 100644
--- a/fedocal/tests/test_meeting.py
+++ b/fedocal/tests/test_meeting.py
@@ -56,7 +56,7 @@ class Meetingtests(Modeltests):
caltest = Calendartests('test_init_calendar')
caltest.session = self.session
caltest.test_init_calendar()
- obj = model.Meeting( #id:1
+ obj = model.Meeting( # id:1
meeting_name='Fedora-fr-test-meeting',
meeting_manager='pingou, shaiton,',
meeting_date=TODAY,
@@ -69,7 +69,7 @@ class Meetingtests(Modeltests):
self.session.commit()
self.assertNotEqual(obj, None)
- obj = model.Meeting( #id:2
+ obj = model.Meeting( # id:2
meeting_name='test-meeting2',
meeting_manager='pingou,',
meeting_date=TODAY + timedelta(days=10),
@@ -82,7 +82,7 @@ class Meetingtests(Modeltests):
self.session.commit()
self.assertNotEqual(obj, None)
- obj = model.Meeting( #id:3
+ obj = model.Meeting( # id:3
meeting_name='test-meeting23h59',
meeting_manager='pingou23h,',
meeting_date=TODAY + timedelta(days=20),
@@ -96,7 +96,7 @@ class Meetingtests(Modeltests):
self.assertNotEqual(obj, None)
# Meeting with end_recursion in the past
- obj = model.Meeting( #id:4
+ obj = model.Meeting( # id:4
meeting_name='test-meeting3',
meeting_manager='test2,',
meeting_date=TODAY - timedelta(days=16),
@@ -112,7 +112,7 @@ class Meetingtests(Modeltests):
self.assertNotEqual(obj, None)
# Two meetings at the same time
- obj = model.Meeting( #id:5
+ obj = model.Meeting( # id:5
meeting_name='test-meeting-st-1',
meeting_manager='test,',
meeting_date=TODAY + timedelta(days=1),
@@ -126,7 +126,7 @@ class Meetingtests(Modeltests):
self.session.commit()
self.assertNotEqual(obj, None)
- obj = model.Meeting( #id:6
+ obj = model.Meeting( # id:6
meeting_name='test-meeting-st-2',
meeting_manager='test,',
meeting_date=TODAY + timedelta(days=1),
@@ -142,7 +142,7 @@ class Meetingtests(Modeltests):
self.assertNotEqual(obj, None)
# Meeting with a recursion
- obj = model.Meeting( #id:7
+ obj = model.Meeting( # id:7
meeting_name='Another test meeting',
meeting_manager='pingou,',
meeting_date=TODAY + timedelta(days=10),
@@ -154,7 +154,7 @@ class Meetingtests(Modeltests):
recursion_frequency=7,
recursion_ends=TODAY + timedelta(days=90))
obj.save(self.session)
- obj = model.Meeting( #id:8
+ obj = model.Meeting( # id:8
meeting_name='Another test meeting2',
meeting_manager='pingou,',
meeting_date=TODAY,
@@ -174,7 +174,7 @@ class Meetingtests(Modeltests):
'Come to our test meeting')
remobj.save(self.session)
self.session.flush()
- obj = model.Meeting( #id:9
+ obj = model.Meeting( # id:9
meeting_name='Test meeting with reminder',
meeting_manager='pingou,',
meeting_date=TODAY + timedelta(days=11),
@@ -194,7 +194,7 @@ class Meetingtests(Modeltests):
'Come to our test meeting')
remobj.save(self.session)
self.session.flush()
- obj = model.Meeting( #id:10
+ obj = model.Meeting( # id:10
meeting_name='Test meeting with reminder and recursion',
meeting_manager='pingou,',
meeting_date=TODAY + timedelta(days=12),
10 years, 4 months
[fedocal] master: pep8 run on fedocallib/__init__ (ab82a66)
by pingou@fedorahosted.org
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit ab82a661e26120b6ebc621d0e5052c415d93a208
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Sat Nov 24 00:02:28 2012 +0100
pep8 run on fedocallib/__init__
>---------------------------------------------------------------
fedocal/fedocallib/__init__.py | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/fedocal/fedocallib/__init__.py b/fedocal/fedocallib/__init__.py
index 8b2134b..3aa5f55 100644
--- a/fedocal/fedocallib/__init__.py
+++ b/fedocal/fedocallib/__init__.py
@@ -264,17 +264,17 @@ def get_meetings(session, calendar, year=None, month=None, day=None,
meetings[key] = [None for cnt2 in range(0, 7)]
for meeting in week.meetings:
start_delta = 0
- if meeting.meeting_time_start.minute < 15:
+ if meeting.meeting_time_start.minute < 15:
start_delta = - meeting.meeting_time_start.minute
- elif 15 <= meeting.meeting_time_start.minute <= 45:
+ elif 15 <= meeting.meeting_time_start.minute <= 45:
start_delta = 30 - meeting.meeting_time_start.minute
elif meeting.meeting_time_start.minute > 45:
start_delta = 60 - meeting.meeting_time_start.minute
stop_delta = 0
- if meeting.meeting_time_stop.minute < 15:
+ if meeting.meeting_time_stop.minute < 15:
stop_delta = - meeting.meeting_time_stop.minute
- elif 15 <= meeting.meeting_time_stop.minute <= 45:
+ elif 15 <= meeting.meeting_time_stop.minute <= 45:
stop_delta = 30 - meeting.meeting_time_stop.minute
elif meeting.meeting_time_stop.minute > 45:
stop_delta = 60 - meeting.meeting_time_stop.minute
@@ -670,6 +670,7 @@ def add_meeting(session, calendarobj, fas_user,
session.commit()
+
def edit_meeting(session, meeting, calendarobj, fas_user,
meeting_name, meeting_date, # meeting_date_end,
meeting_time_start, meeting_time_stop, comanager,
@@ -712,7 +713,7 @@ def edit_meeting(session, meeting, calendarobj, fas_user,
comanager)
meeting.meeting_date = meeting_time_start.date()
- meeting_end_date = None # meeting_date_end
+ meeting_end_date = None # meeting_date_end
if not meeting_end_date:
meeting_end_date = meeting_time_start.date()
meeting.meeting_end_date = meeting_end_date
10 years, 4 months
[fedocal] master: pep8 run on test_meeting (71cd822)
by pingou@fedorahosted.org
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit 71cd822a41c9af6d7740881dd99ea0bb0ec5b8e9
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Fri Nov 23 23:58:50 2012 +0100
pep8 run on test_meeting
Apparently pep8 does not like inline comment with only numbers
>---------------------------------------------------------------
fedocal/tests/test_meeting.py | 20 ++++++++++----------
1 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/fedocal/tests/test_meeting.py b/fedocal/tests/test_meeting.py
index 5cad7ff..3f3a14a 100644
--- a/fedocal/tests/test_meeting.py
+++ b/fedocal/tests/test_meeting.py
@@ -56,7 +56,7 @@ class Meetingtests(Modeltests):
caltest = Calendartests('test_init_calendar')
caltest.session = self.session
caltest.test_init_calendar()
- obj = model.Meeting( #1
+ obj = model.Meeting( #id:1
meeting_name='Fedora-fr-test-meeting',
meeting_manager='pingou, shaiton,',
meeting_date=TODAY,
@@ -69,7 +69,7 @@ class Meetingtests(Modeltests):
self.session.commit()
self.assertNotEqual(obj, None)
- obj = model.Meeting( #2
+ obj = model.Meeting( #id:2
meeting_name='test-meeting2',
meeting_manager='pingou,',
meeting_date=TODAY + timedelta(days=10),
@@ -82,7 +82,7 @@ class Meetingtests(Modeltests):
self.session.commit()
self.assertNotEqual(obj, None)
- obj = model.Meeting( #3
+ obj = model.Meeting( #id:3
meeting_name='test-meeting23h59',
meeting_manager='pingou23h,',
meeting_date=TODAY + timedelta(days=20),
@@ -96,7 +96,7 @@ class Meetingtests(Modeltests):
self.assertNotEqual(obj, None)
# Meeting with end_recursion in the past
- obj = model.Meeting( #4
+ obj = model.Meeting( #id:4
meeting_name='test-meeting3',
meeting_manager='test2,',
meeting_date=TODAY - timedelta(days=16),
@@ -112,7 +112,7 @@ class Meetingtests(Modeltests):
self.assertNotEqual(obj, None)
# Two meetings at the same time
- obj = model.Meeting( #5
+ obj = model.Meeting( #id:5
meeting_name='test-meeting-st-1',
meeting_manager='test,',
meeting_date=TODAY + timedelta(days=1),
@@ -126,7 +126,7 @@ class Meetingtests(Modeltests):
self.session.commit()
self.assertNotEqual(obj, None)
- obj = model.Meeting( #6
+ obj = model.Meeting( #id:6
meeting_name='test-meeting-st-2',
meeting_manager='test,',
meeting_date=TODAY + timedelta(days=1),
@@ -142,7 +142,7 @@ class Meetingtests(Modeltests):
self.assertNotEqual(obj, None)
# Meeting with a recursion
- obj = model.Meeting( #7
+ obj = model.Meeting( #id:7
meeting_name='Another test meeting',
meeting_manager='pingou,',
meeting_date=TODAY + timedelta(days=10),
@@ -154,7 +154,7 @@ class Meetingtests(Modeltests):
recursion_frequency=7,
recursion_ends=TODAY + timedelta(days=90))
obj.save(self.session)
- obj = model.Meeting( #8
+ obj = model.Meeting( #id:8
meeting_name='Another test meeting2',
meeting_manager='pingou,',
meeting_date=TODAY,
@@ -174,7 +174,7 @@ class Meetingtests(Modeltests):
'Come to our test meeting')
remobj.save(self.session)
self.session.flush()
- obj = model.Meeting( #9
+ obj = model.Meeting( #id:9
meeting_name='Test meeting with reminder',
meeting_manager='pingou,',
meeting_date=TODAY + timedelta(days=11),
@@ -194,7 +194,7 @@ class Meetingtests(Modeltests):
'Come to our test meeting')
remobj.save(self.session)
self.session.flush()
- obj = model.Meeting( #10
+ obj = model.Meeting( #id:10
meeting_name='Test meeting with reminder and recursion',
meeting_manager='pingou,',
meeting_date=TODAY + timedelta(days=12),
10 years, 4 months
[fedocal] master: Fix the get_meetings function (398eb0f)
by pingou@fedorahosted.org
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit 398eb0f71d790adb0f94d246864e023e89be28eb
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Sat Nov 24 00:26:35 2012 +0100
Fix the get_meetings function
Fix the calculation of the start_delta and stop_delta
Fix the case where we have meetings overlaping the day change line (especially when
playing with time-zone)
>---------------------------------------------------------------
fedocal/fedocallib/__init__.py | 13 +++++++------
1 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/fedocal/fedocallib/__init__.py b/fedocal/fedocallib/__init__.py
index d28023c..8b73c24 100644
--- a/fedocal/fedocallib/__init__.py
+++ b/fedocal/fedocallib/__init__.py
@@ -263,10 +263,9 @@ def get_meetings(session, calendar, year=None, month=None, day=None,
# pylint: disable=W0612
meetings[key] = [None for cnt2 in range(0, 7)]
for meeting in week.meetings:
-
start_delta = 0
if meeting.meeting_time_start.minute < 15:
- start_delta = meeting.meeting_time_start.minute - 30
+ start_delta = - meeting.meeting_time_start.minute
elif 15 <= meeting.meeting_time_start.minute <= 45:
start_delta = 30 - meeting.meeting_time_start.minute
elif meeting.meeting_time_start.minute > 45:
@@ -274,7 +273,7 @@ def get_meetings(session, calendar, year=None, month=None, day=None,
stop_delta = 0
if meeting.meeting_time_stop.minute < 15:
- stop_delta = meeting.meeting_time_stop.minute - 30
+ stop_delta = - meeting.meeting_time_stop.minute
elif 15 <= meeting.meeting_time_stop.minute <= 45:
stop_delta = 30 - meeting.meeting_time_stop.minute
elif meeting.meeting_time_stop.minute > 45:
@@ -285,19 +284,21 @@ def get_meetings(session, calendar, year=None, month=None, day=None,
meeting.meeting_time_start.hour,
meeting.meeting_time_start.minute, 0) + timedelta(
minutes=start_delta)
+ startdt = convert_time(startdt, 'UTC', tzone)
+
stopdt = datetime(meeting.meeting_date.year,
meeting.meeting_date.month, meeting.meeting_date.day,
meeting.meeting_time_stop.hour,
meeting.meeting_time_stop.minute, 0) + timedelta(
minutes=stop_delta)
-
- startdt = convert_time(startdt, 'UTC', tzone)
stopdt = convert_time(stopdt, 'UTC', tzone)
+ if stopdt < startdt:
+ stopdt = stopdt + timedelta(days=1)
t_time = startdt
while t_time < stopdt:
- day = startdt.weekday()
+ day = t_time.weekday()
key = t_time.strftime(fmt)
if key in meetings:
if meetings[key][day]:
10 years, 4 months
[fedocal] master: Correct the display of the time-zone in the view meeting (339a22c)
by pingou@fedorahosted.org
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit 339a22c29a574b92e9a2c24baeb24ec048534e19
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Fri Nov 23 23:52:06 2012 +0100
Correct the display of the time-zone in the view meeting
>---------------------------------------------------------------
fedocal/templates/view_meeting.html | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/fedocal/templates/view_meeting.html b/fedocal/templates/view_meeting.html
index c4ef4e1..4465dc1 100644
--- a/fedocal/templates/view_meeting.html
+++ b/fedocal/templates/view_meeting.html
@@ -20,9 +20,9 @@
<h4> Meeting: {{ meeting.meeting_name}}</h4>
<ul>
- <li>Date: {{ meeting.meeting_date }} UTC</li>
- <li>Starting time: {{ meeting.meeting_time_start }} UTC</li>
- <li>Ending time: {{ meeting.meeting_time_stop }} UTC</li>
+ <li>Date: {{ meeting.meeting_date }} </li>
+ <li>Starting time: {{ meeting.meeting_time_start }} {{tzone}}</li>
+ <li>Ending time: {{ meeting.meeting_time_stop }} {{tzone}}</li>
</ul>
<pre>
10 years, 4 months
[fedocal] master: Specify the timezone in the my meetings page (e882e1a)
by pingou@fedorahosted.org
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit e882e1ac33bfcc8da4ae0bc6ec9c6b63487d0045
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Fri Nov 23 23:50:29 2012 +0100
Specify the timezone in the my meetings page
>---------------------------------------------------------------
fedocal/templates/my_meeting.html | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/fedocal/templates/my_meeting.html b/fedocal/templates/my_meeting.html
index dfff20d..94fcda8 100644
--- a/fedocal/templates/my_meeting.html
+++ b/fedocal/templates/my_meeting.html
@@ -14,6 +14,9 @@
</p>
</header>
+
+ <p>Meetings times are displayed in the {{tzone}} time-zone.</p>
+
<h4>Future meeting</h4>
{% if single_meetings %}
<p> This is the list of all non-recurrent meeting you created </p>
10 years, 4 months
[fedocal] master: Add handling of the time-zone in the my meetings page and the view meeting page (d90f361)
by pingou@fedorahosted.org
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit d90f3618783e01a489255d5402719920e20fdd2f
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Fri Nov 23 23:53:42 2012 +0100
Add handling of the time-zone in the my meetings page and the view meeting page
The view meeting page has simplified logic to handle meeting time-zone convertion.
>---------------------------------------------------------------
fedocal/__init__.py | 28 ++++++++--------------------
1 files changed, 8 insertions(+), 20 deletions(-)
diff --git a/fedocal/__init__.py b/fedocal/__init__.py
index 50b92c9..4991e49 100644
--- a/fedocal/__init__.py
+++ b/fedocal/__init__.py
@@ -201,17 +201,18 @@ def my_meetings():
involved, either because you created them or because someone gave
you manager rights to the meeting.
"""
+ tzone = get_timezone()
regular_meetings = fedocallib.get_future_regular_meeting_of_user(SESSION,
- flask.g.fas_user.username)
+ flask.g.fas_user.username, tzone=tzone)
single_meetings = fedocallib.get_future_single_meeting_of_user(SESSION,
- flask.g.fas_user.username)
+ flask.g.fas_user.username, tzone=tzone)
past_meetings = fedocallib.get_past_meeting_of_user(SESSION,
- flask.g.fas_user.username)
+ flask.g.fas_user.username, tzone=tzone)
admin = is_admin()
return flask.render_template('my_meeting.html',
title='My meeting', regular_meetings=regular_meetings,
single_meetings=single_meetings, pas_meetings=past_meetings,
- admin=admin)
+ admin=admin, tzone=tzone)
@APP.route('/login/', methods=('GET', 'POST'))
@@ -411,27 +412,14 @@ def view_meeting_page(meeting_id, full):
:arg meeting_id: the identifier of the meeting to visualize.
"""
meeting = Meeting.by_id(SESSION, meeting_id)
+ tzone = get_timezone()
if not meeting:
flask.flash('No meeting could be found for this identifier')
return flask.redirect(flask.url_for('index'))
- meeting_start = fedocallib.convert_time(
- datetime.datetime(meeting.meeting_date.year,
- meeting.meeting_date.month, meeting.meeting_date.day,
- meeting.meeting_time_start.hour,
- meeting.meeting_time_start.minute),
- 'UTC', get_timezone())
- meeting_stop = fedocallib.convert_time(
- datetime.datetime(meeting.meeting_date.year,
- meeting.meeting_date.month, meeting.meeting_date.day,
- meeting.meeting_time_stop.hour,
- meeting.meeting_time_stop.minute),
- 'UTC', get_timezone())
- meeting.meeting_date = meeting_start.date()
- meeting.meeting_time_start = meeting_start.time()
- meeting.meeting_time_stop = meeting_stop.time()
+ meeting = fedocallib.convert_meeting_timezone(meeting, 'UTC', tzone)
auth_form = forms.LoginForm()
return flask.render_template('view_meeting.html', full=full,
- meeting=meeting,
+ meeting=meeting, tzone=tzone,
title=meeting.meeting_name, auth_form=auth_form)
10 years, 4 months
[fedocal] master: Create the convert_meeting_timezone and adjust the get_*_meeting_of_user (79ccb56)
by pingou@fedorahosted.org
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit 79ccb56ca282f6432e31f4aa70e7826dad6a79c0
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Fri Nov 23 23:49:35 2012 +0100
Create the convert_meeting_timezone and adjust the get_*_meeting_of_user
The convert_meeting_timezone if made to be as generic as possible to allow easy
convertion of the meetings from one timezone to another.
The get_*_meeting_of_user have been updated so that the my_meetings page on the
Flask application can handled timezone
>---------------------------------------------------------------
fedocal/fedocallib/__init__.py | 65 +++++++++++++++++++++++++++++++++-------
1 files changed, 54 insertions(+), 11 deletions(-)
diff --git a/fedocal/fedocallib/__init__.py b/fedocal/fedocallib/__init__.py
index b6b4aa8..d28023c 100644
--- a/fedocal/fedocallib/__init__.py
+++ b/fedocal/fedocallib/__init__.py
@@ -55,6 +55,33 @@ def convert_time(timeobj, tzfrom, tzto):
return timeobj_to
+def convert_meeting_timezone(meeting, tzfrom, tzto):
+ """ Convert a given meeting from one specified timezone to another
+ specified one.
+
+ :arg meeting: a Meeting object representing the meeting to convert
+ from one timezone to the other.
+ :arg tzfrom: the timezone from which to convert
+ :arg tzto: the timezone to which to convert
+ """
+ meeting_start = convert_time(
+ datetime(meeting.meeting_date.year, meeting.meeting_date.month,
+ meeting.meeting_date.day,
+ meeting.meeting_time_start.hour,
+ meeting.meeting_time_start.minute),
+ tzfrom, tzto)
+ meeting_stop = convert_time(
+ datetime(meeting.meeting_date.year, meeting.meeting_date.month,
+ meeting.meeting_date.day,
+ meeting.meeting_time_stop.hour,
+ meeting.meeting_time_stop.minute),
+ tzfrom, tzto)
+ meeting.meeting_date = meeting_start.date()
+ meeting.meeting_time_start = meeting_start.time()
+ meeting.meeting_time_stop = meeting_stop.time()
+ return meeting
+
+
def create_session(db_url, debug=False, pool_recycle=3600):
""" Create the Session object to use to query the database.
@@ -332,22 +359,28 @@ def is_date_in_future(indate, start_time):
return True
-def get_past_meeting_of_user(session, username, from_date=date.today()):
+def get_past_meeting_of_user(session, username, tzone='UTC',
+ from_date=date.today()):
""" Return all past meeting which specified username is among the
managers.
:arg session: the database session to use
:arg username: the FAS user name that you would like to have the
past meetings for.
- :arg from_date: the date from which the futur meetings should be
+ :kwarg tzone: the time-zone to which to convert the meetings.
+ Defaults to 'UTC'.
+ :kwarg from_date: the date from which the futur meetings should be
retrieved. Defaults to today
"""
- meetings = Meeting.get_past_meeting_of_user(session, username,
+ meetings_tmp = Meeting.get_past_meeting_of_user(session, username,
from_date)
+ meetings = []
+ for meeting in meetings_tmp:
+ meetings.append(convert_meeting_timezone(meeting, 'UTC', tzone))
return meetings
# pylint: disable=C0103
-def get_future_single_meeting_of_user(session, username,
+def get_future_single_meeting_of_user(session, username, tzone='UTC',
from_date=date.today()):
""" Return all future meeting which specified username is among the
managers.
@@ -355,28 +388,38 @@ def get_future_single_meeting_of_user(session, username,
:arg session: the database session to use
:arg username: the FAS user name that you would like to have the
past meetings for.
- :arg from_date: the date from which the futur meetings should be
+ :kwarg tzone: the time-zone to which to convert the meetings.
+ Defaults to 'UTC'.
+ :kwarg from_date: the date from which the futur meetings should be
retrieved. Defaults to today
"""
- meetings = Meeting.get_future_single_meeting_of_user(session,
+ meetings_tmp = Meeting.get_future_single_meeting_of_user(session,
username, from_date)
+ meetings = []
+ for meeting in meetings_tmp:
+ meetings.append(convert_meeting_timezone(meeting, 'UTC', tzone))
return meetings
# pylint: disable=C0103
-def get_future_regular_meeting_of_user(session, username,
+def get_future_regular_meeting_of_user(session, username, tzone='UTC',
from_date=date.today()):
""" Return all future recursive meeting which specified username is
among the managers.
- :arg session: the database session to use
+ :arg session: the database session to use.
:arg username: the FAS user name that you would like to have the
past meetings for.
- :arg from_date: the date from which the futur meetings should be
- retrieved. Defaults to today
+ :kwarg tzone: the time-zone to which to convert the meetings.
+ Defaults to 'UTC'.
+ :kwarg from_date: the date from which the futur meetings should be
+ retrieved. Defaults to today.
"""
- meetings = Meeting.get_future_regular_meeting_of_user(session,
+ meetings_tmp = Meeting.get_future_regular_meeting_of_user(session,
username, from_date)
+ meetings = []
+ for meeting in meetings_tmp:
+ meetings.append(convert_meeting_timezone(meeting, 'UTC', tzone))
return meetings
10 years, 4 months
[fedocal] master: Fix the fedocallib unit-tests (f1d7849)
by pingou@fedorahosted.org
Repository : http://git.fedorahosted.org/cgit/fedocal.git
On branch : master
>---------------------------------------------------------------
commit f1d784970e13f40a21b11b26e10f02d32f473fff
Author: Pierre-Yves Chibon <pingou(a)pingoured.fr>
Date: Fri Nov 23 23:49:26 2012 +0100
Fix the fedocallib unit-tests
Use timedelta and time object in to test the is_date_in_future
Use the keyword: "from_date" for all the get_*_meeting_of_user (necessary since we
introduced the tzone keyword before the from_date)
Be more generous when testing the edit_meeting with a date in the past
>---------------------------------------------------------------
fedocal/tests/test_fedocallib.py | 20 ++++++++++----------
1 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/fedocal/tests/test_fedocallib.py b/fedocal/tests/test_fedocallib.py
index a75c65b..e70af93 100644
--- a/fedocal/tests/test_fedocallib.py
+++ b/fedocal/tests/test_fedocallib.py
@@ -270,16 +270,16 @@ class Fedocallibtests(Modeltests):
def test_is_date_in_future(self):
""" Test the is_date_in_future function. """
meeting_date = date.today()
- meeting_time = datetime.utcnow().hour + 1
+ meeting_time = datetime.utcnow() + timedelta(hours=1)
self.assertTrue(fedocallib.is_date_in_future(meeting_date,
meeting_time))
- meeting_time = datetime.utcnow().hour - 1
+ meeting_time = datetime.utcnow() - timedelta(hours=1)
self.assertFalse(fedocallib.is_date_in_future(meeting_date,
meeting_time))
meeting_date = date.today() + timedelta(days=1)
- meeting_time = datetime.utcnow().hour
+ meeting_time = datetime.utcnow()
self.assertTrue(fedocallib.is_date_in_future(meeting_date,
meeting_time))
@@ -291,7 +291,7 @@ class Fedocallibtests(Modeltests):
""" Test the get_past_meeting_of_user function. """
self.__setup_meeting()
meetings = fedocallib.get_past_meeting_of_user(self.session,
- 'pingou', TODAY)
+ 'pingou', from_date=TODAY)
self.assertNotEqual(meetings, None)
self.assertEqual(len(meetings), 0)
self.assertEqual(meetings, [])
@@ -308,7 +308,7 @@ class Fedocallibtests(Modeltests):
obj.save(self.session)
self.session.commit()
meetings = fedocallib.get_past_meeting_of_user(self.session,
- 'pingou', TODAY)
+ 'pingou', from_date=TODAY)
self.assertNotEqual(meetings, None)
self.assertEqual(len(meetings), 1)
self.assertEqual(meetings[0].meeting_name, 'A past test meeting')
@@ -320,7 +320,7 @@ class Fedocallibtests(Modeltests):
""" Test the get_future_single_meeting_of_user function. """
self.__setup_meeting()
meetings = fedocallib.get_future_single_meeting_of_user(self.session,
- 'pingou,', TODAY)
+ 'pingou,', from_date=TODAY)
self.assertNotEqual(meetings, None)
self.assertEqual(len(meetings), 3)
self.assertEqual(meetings[0].meeting_name,
@@ -351,7 +351,7 @@ class Fedocallibtests(Modeltests):
""" Test the get_future_regular_meeting_of_user function. """
self.__setup_meeting()
meetings = fedocallib.get_future_regular_meeting_of_user(
- self.session, 'pingou', TODAY)
+ self.session, 'pingou', from_date=TODAY)
self.assertNotEqual(meetings, None)
self.assertEqual(len(meetings), 3)
self.assertEqual(meetings[0].meeting_name,
@@ -502,7 +502,7 @@ class Fedocallibtests(Modeltests):
calendar = vobject.iCalendar()
self.__setup_meeting()
meetings = fedocallib.get_future_single_meeting_of_user(
- self.session, 'pingou,', TODAY)
+ self.session, 'pingou,', from_date=TODAY)
self.assertNotEqual(meetings, None)
self.assertEqual(len(meetings), 3)
@@ -864,9 +864,9 @@ class Fedocallibtests(Modeltests):
self.assertRaises(InvalidMeeting, fedocallib.edit_meeting,
self.session, meeting, calendarobj, fasuser,
'Fedora-fr-meeting_edited',
- date.today() - timedelta(days=1),
+ date.today() - timedelta(days=2),
time(23, 0), time(23, 59), None,
- 'Information', 'EMEA', 'Europe/Paris',
+ 'Information', 'EMEA', 'UTC',
None, None,
None, None)
self.session.rollback()
10 years, 4 months