|
13 | 13 | from ietf.doc.models import ( Document, State, BallotDocEvent, BallotType, NewRevisionDocEvent, |
14 | 14 | TelechatDocEvent, WriteupDocEvent ) |
15 | 15 | from ietf.doc.utils_charter import next_revision, default_review_text, default_action_text |
| 16 | +from ietf.doc.utils import close_open_ballots |
16 | 17 | from ietf.group.models import Group, GroupMilestone |
17 | 18 | from ietf.iesg.models import TelechatDate |
18 | 19 | from ietf.person.models import Person |
@@ -97,7 +98,7 @@ def find_event(t): |
97 | 98 |
|
98 | 99 | self.assertTrue("state changed" in find_event("changed_state")[0].desc.lower()) |
99 | 100 |
|
100 | | - if slug in ("intrev", "iesgrev"): |
| 101 | + if slug in ("intrev", "extrev"): |
101 | 102 | self.assertTrue(find_event("created_ballot")) |
102 | 103 |
|
103 | 104 | self.assertEqual(len(outbox), 3 if slug=="intrev" else 2 ) |
@@ -127,6 +128,14 @@ def find_event(t): |
127 | 128 | for word in ["State changed", "ID Tracker URL", ]: |
128 | 129 | self.assertIn(word, body) |
129 | 130 |
|
| 131 | + by = Person.objects.get(user__username="secretary") |
| 132 | + for slug in ('extrev','iesgrev'): |
| 133 | + close_open_ballots(charter,by) |
| 134 | + r = self.client.post(url, dict(charter_state=str(State.objects.get(used=True,type='charter',slug=slug).pk) )) |
| 135 | + self.assertTrue(r.status_code,302) |
| 136 | + charter = Document.objects.get(name="charter-ietf-%s" % group.acronym) |
| 137 | + self.assertTrue(charter.ballot_open('approve')) |
| 138 | + |
130 | 139 |
|
131 | 140 | # Exercise internal review of a recharter |
132 | 141 | group = Group.objects.get(acronym="mars") |
|
0 commit comments