Merge lp:~mhall119/summit/fix-personal-ical into lp:summit

Proposed by Michael Hall
Status: Merged
Approved by: James Westby
Approved revision: 188
Merged at revision: 189
Proposed branch: lp:~mhall119/summit/fix-personal-ical
Merge into: lp:summit
Diff against target: 50 lines (+28/-1)
2 files modified
summit/schedule/tests.py (+27/-0)
summit/schedule/views.py (+1/-1)
To merge this branch: bzr merge lp:~mhall119/summit/fix-personal-ical
Reviewer Review Type Date Requested Status
James Westby (community) Approve
Review via email: mp+76393@code.launchpad.net

Commit message

Change user_private_ical to use Schedule.from_request, add test case for private ical.

Description of the change

Overview
========
The personal ical view wasn't updated to use Schedule.from_request

Details
=======
Because of the refactoring to use Schedule.from_request, the Schedule constructor no longer has a show_private parameter. However, because the user_private_ical view wasn't updated to use Schedule.from_request, it was still trying to pass that parameter to the constructor, causing an exception to be thrown.

To post a comment you must log in.
Revision history for this message
James Westby (james-w) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'summit/schedule/tests.py'
2--- summit/schedule/tests.py 2011-09-19 16:26:12 +0000
3+++ summit/schedule/tests.py 2011-09-21 12:12:23 +0000
4@@ -229,6 +229,33 @@
5 response = self.client.get('/uds-test.ical')
6 self.assertEquals(response.status_code, 200)
7 self.assertContains(response, 'URL:%s/uds-test/meeting/%s/test.name/' % (site_root, meeting.id), 1)
8+
9+ def test_private_ical(self):
10+ """ Tests that private icals contain private meetings """
11+ now = datetime.datetime.utcnow()
12+ one_hour = datetime.timedelta(0, 3600)
13+ week = datetime.timedelta(days=7)
14+ summit = factory.make_one(Summit, name='uds-test')
15+ slot = factory.make_one(
16+ Slot,
17+ start_utc=now,
18+ end_utc=now+one_hour,
19+ type='open',
20+ summit=summit)
21+
22+ room = factory.make_one(Room, summit=summit)
23+ meeting = factory.make_one(Meeting, summit=summit, name='test.name', private=True)
24+ agenda = factory.make_one(Agenda, slot=slot, meeting=meeting, room=room)
25+
26+ self.assertEquals(meeting.meeting_page_url, '/uds-test/meeting/%s/test.name/' % meeting.id)
27+
28+ user = factory.make_one(User, username='testuser', first_name='Test', last_name='User')
29+ attendee = factory.make_one(Attendee, summit=summit, user=user, start_utc=now, end_utc=now+week)
30+ participant = factory.make_one(Participant, attendee=attendee, meeting=meeting)
31+
32+ response = self.client.get('/uds-test/participant/my_schedule_%s.ical' % attendee.secret_key)
33+ self.assertEquals(response.status_code, 200)
34+ self.assertContains(response, 'URL:%s/uds-test/meeting/%s/test.name/' % (site_root, meeting.id), 1)
35
36 class MeetingPageTestCase(djangotest.TestCase):
37
38
39=== modified file 'summit/schedule/views.py'
40--- summit/schedule/views.py 2011-09-17 18:47:47 +0000
41+++ summit/schedule/views.py 2011-09-21 12:12:23 +0000
42@@ -251,7 +251,7 @@
43 def user_private_ical(request, summit, secret_key):
44 """Returns a user's registered events as an ical"""
45 attendee = get_object_or_404(Attendee, secret_key_id=secret_key)
46- schedule = Schedule(request, summit, show_private=True)
47+ schedule = Schedule.from_request(request, summit, show_private=True)
48 schedule.calculate()
49
50 response = HttpResponse(mimetype='text/calendar')

Subscribers

People subscribed via source and target branches