|
24 | 24 | from ietf.dbtemplate.factories import DBTemplateFactory |
25 | 25 | from ietf.dbtemplate.models import DBTemplate |
26 | 26 | from ietf.doc.factories import DocEventFactory, WgDocumentAuthorFactory |
27 | | -from ietf.group.factories import RoleFactory, RoleHistoryFactory |
| 27 | +from ietf.group.factories import GroupFactory, GroupHistoryFactory, RoleFactory, RoleHistoryFactory |
28 | 28 | from ietf.group.models import Group, Role |
29 | 29 | from ietf.meeting.factories import MeetingFactory |
30 | 30 | from ietf.message.models import Message |
@@ -2302,8 +2302,19 @@ def test_elig_by_office_active_groups(self): |
2302 | 2302 |
|
2303 | 2303 | self.assertEqual(set([chair,secr]), set(list_eligible(nomcom=self.nomcom))) |
2304 | 2304 |
|
2305 | | - # Current implementation of 8989 rule 2 has an edge case bug |
2306 | | - # If someone was made a wg officer after the elgibility date proscribed by rfc8989, they will still be counted as eligible. |
| 2305 | + |
| 2306 | + def test_elig_by_office_edge(self): |
| 2307 | + |
| 2308 | + elig_date=get_eligibility_date(self.nomcom) |
| 2309 | + day_after = elig_date + datetime.timedelta(days=1) |
| 2310 | + two_days_after = elig_date + datetime.timedelta(days=2) |
| 2311 | + |
| 2312 | + group = GroupFactory(time=two_days_after) |
| 2313 | + GroupHistoryFactory(group=group,time=day_after) |
| 2314 | + |
| 2315 | + after_chair = RoleFactory(name_id='chair',group=group).person |
| 2316 | + |
| 2317 | + self.assertFalse(is_eligible(person=after_chair,nomcom=self.nomcom)) |
2307 | 2318 |
|
2308 | 2319 |
|
2309 | 2320 | def test_elig_by_office_closed_groups(self): |
|
0 commit comments