|
6 | 6 | from django.core.urlresolvers import reverse as urlreverse |
7 | 7 | from django.conf import settings |
8 | 8 | from django.contrib.auth.models import User |
| 9 | +from django.http import HttpRequest |
9 | 10 |
|
10 | 11 | from pyquery import PyQuery |
11 | 12 |
|
|
14 | 15 | from ietf.meeting.helpers import can_approve_interim_request, can_view_interim_request |
15 | 16 | from ietf.meeting.models import Session, TimeSlot, Meeting |
16 | 17 | from ietf.meeting.test_data import make_meeting_test_data |
| 18 | +from ietf.name.models import SessionStatusName |
17 | 19 | from ietf.utils.test_utils import TestCase, login_testing_unauthorized, unicontent |
18 | 20 |
|
19 | 21 | class MeetingTests(TestCase): |
@@ -339,13 +341,43 @@ def test_slot_to_the_right(self): |
339 | 341 | # ------------------------------------------------- |
340 | 342 |
|
341 | 343 | class InterimTests(TestCase): |
| 344 | + def test_interim_announce(self): |
| 345 | + make_meeting_test_data() |
| 346 | + url = urlreverse("ietf.meeting.views.interim_announce") |
| 347 | + meeting = Meeting.objects.filter(type='interim',session__group__acronym='mars').first() |
| 348 | + session = meeting.session_set.first() |
| 349 | + session.status = SessionStatusName.objects.get(slug='scheda') |
| 350 | + session.save() |
| 351 | + login_testing_unauthorized(self,"secretary",url) |
| 352 | + r = self.client.get(url) |
| 353 | + self.assertEqual(r.status_code, 200) |
| 354 | + self.assertTrue(meeting.number in r.content) |
| 355 | + |
| 356 | + def test_interim_send_announcement(self): |
| 357 | + make_meeting_test_data() |
| 358 | + meeting = Meeting.objects.filter(type='interim',session__status='apprw',session__group__acronym='mars').first() |
| 359 | + url = urlreverse("ietf.meeting.views.interim_send_announcement", kwargs={'number':meeting.number}) |
| 360 | + login_testing_unauthorized(self,"secretary",url) |
| 361 | + r = self.client.get(url) |
| 362 | + self.assertEqual(r.status_code, 200) |
| 363 | + |
| 364 | + def test_interim_approve(self): |
| 365 | + make_meeting_test_data() |
| 366 | + meeting = Meeting.objects.filter(type='interim',session__status='apprw',session__group__acronym='mars').first() |
| 367 | + url = urlreverse('ietf.meeting.views.interim_request_details',kwargs={'number':meeting.number}) |
| 368 | + login_testing_unauthorized(self,"secretary",url) |
| 369 | + r = self.client.post(url,{'approve':'approve'}) |
| 370 | + self.assertRedirects(r,urlreverse('ietf.meeting.views.interim_send_announcement',kwargs={'number':meeting.number})) |
| 371 | + for session in meeting.session_set.all(): |
| 372 | + self.assertEqual(session.status.slug,'scheda') |
| 373 | + |
342 | 374 | def test_upcoming(self): |
343 | 375 | make_meeting_test_data() |
344 | 376 | r = self.client.get("/meeting/upcoming/") |
345 | 377 | self.assertEqual(r.status_code, 200) |
346 | 378 | today = datetime.date.today() |
347 | | - mars_interim = Meeting.objects.filter(date__gt=today,type='interim',number__contains='mars').first() |
348 | | - ames_interim = Meeting.objects.filter(date__gt=today,type='interim',number__contains='ames').first() |
| 379 | + mars_interim = Meeting.objects.filter(date__gt=today,type='interim',session__group__acronym='mars',session__status='sched').first() |
| 380 | + ames_interim = Meeting.objects.filter(date__gt=today,type='interim',session__group__acronym='ames',session__status='canceled').first() |
349 | 381 | self.assertTrue(mars_interim.number in r.content) |
350 | 382 | self.assertTrue(ames_interim.number in r.content) |
351 | 383 | # cancelled session |
|
0 commit comments