Skip to content

Commit 05af647

Browse files
committed
Merged in [15226] from rjsparks@nostrum.com:
Use factories for ietf.doc.tests_charter. - Legacy-Id: 15240 Note: SVN reference [15226] has been migrated to Git commit 880dafd
2 parents dbe9211 + 880dafd commit 05af647

3 files changed

Lines changed: 53 additions & 49 deletions

File tree

ietf/doc/factories.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@ class CharterFactory(BaseDocumentFactory):
134134

135135
type_id = 'charter'
136136
group = factory.SubFactory('ietf.group.factories.GroupFactory',type_id='wg')
137+
name = factory.LazyAttribute(lambda o: 'charter-ietf-%s'%o.group.acronym)
137138

138139
@factory.post_generation
139140
def set_group_charter_document(obj, create, extracted, **kwargs):

ietf/doc/tests_charter.py

Lines changed: 52 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,12 @@
1616
from ietf.doc.utils_charter import ( next_revision, default_review_text, default_action_text,
1717
charter_name_for_group )
1818
from ietf.doc.utils import close_open_ballots
19-
from ietf.group.factories import RoleFactory
19+
from ietf.group.factories import RoleFactory, GroupFactory
2020
from ietf.group.models import Group, GroupMilestone
2121
from ietf.iesg.models import TelechatDate
2222
from ietf.person.models import Person
2323
from ietf.utils.test_utils import TestCase, unicontent
2424
from ietf.utils.mail import outbox, empty_outbox
25-
from ietf.utils.test_data import make_test_data
2625
from ietf.utils.test_utils import login_testing_unauthorized
2726

2827
class EditCharterTests(TestCase):
@@ -40,7 +39,7 @@ def write_charter_file(self, charter):
4039
f.write("This is a charter.")
4140

4241
def test_startstop_process(self):
43-
make_test_data()
42+
CharterFactory(group__acronym='mars')
4443

4544
group = Group.objects.get(acronym="mars")
4645
charter = group.charter
@@ -65,7 +64,19 @@ def test_startstop_process(self):
6564
self.assertTrue("state changed" in charter.latest_event(type="changed_state").desc.lower())
6665

6766
def test_change_state(self):
68-
make_test_data()
67+
68+
area = GroupFactory(type_id='area')
69+
RoleFactory(name_id='ad',group=area,person=Person.objects.get(user__username='ad'))
70+
71+
ames = GroupFactory(acronym='ames',state_id='proposed',list_email='ames-wg@ietf.org',parent=area)
72+
RoleFactory(name_id='ad',group=ames,person=Person.objects.get(user__username='ad'))
73+
RoleFactory(name_id='chair',group=ames,person__name=u'Ames Man',person__user__email='ameschairman@ietf.org')
74+
RoleFactory(name_id='secr',group=ames,person__name=u'Secretary',person__user__email='amessecretary@ietf.org')
75+
CharterFactory(group=ames)
76+
77+
mars = GroupFactory(acronym='mars',parent=area)
78+
CharterFactory(group=mars)
79+
6980

7081
group = Group.objects.get(acronym="ames")
7182
charter = group.charter
@@ -183,9 +194,11 @@ def test_change_title(self):
183194
def test_already_open_charter_ballot(self):
184195
# make sure the right thing happens to the charter ballots as the Secretariat
185196
# does the unusual state sequence of: intrev --> extrev --> intrev
186-
make_test_data()
197+
area = GroupFactory(type_id='area')
198+
RoleFactory(name_id='ad',group=area,person=Person.objects.get(user__username='ad'))
199+
group = GroupFactory(acronym='ames',state_id='proposed',list_email='ames-wg@ietf.org',parent=area)
200+
CharterFactory(group=group)
187201

188-
group = Group.objects.get(acronym="ames")
189202
charter = group.charter
190203

191204
url = urlreverse('ietf.doc.views_charter.change_state', kwargs=dict(name=charter.name))
@@ -247,10 +260,8 @@ def find_event(t):
247260
self.assertTrue(find_event("created_ballot"))
248261

249262
def test_edit_telechat_date(self):
250-
make_test_data()
251-
252-
group = Group.objects.get(acronym="mars")
253-
charter = group.charter
263+
charter = CharterFactory()
264+
group = charter.group
254265

255266
url = urlreverse('ietf.doc.views_doc.telechat_date;charter', kwargs=dict(name=charter.name))
256267
login_testing_unauthorized(self, "secretary", url)
@@ -286,10 +297,9 @@ def test_edit_telechat_date(self):
286297
self.assertTrue(not charter.latest_event(TelechatDocEvent, "scheduled_for_telechat").telechat_date)
287298

288299
def test_no_returning_item_for_different_ballot(self):
289-
make_test_data()
300+
charter = CharterFactory()
301+
group = charter.group
290302

291-
group = Group.objects.get(acronym="ames")
292-
charter = group.charter
293303
url = urlreverse('ietf.doc.views_doc.telechat_date;charter', kwargs=dict(name=charter.name))
294304
login_testing_unauthorized(self, "secretary", url)
295305
login = Person.objects.get(user__username="secretary")
@@ -315,9 +325,7 @@ def test_no_returning_item_for_different_ballot(self):
315325
self.assertFalse(telechat_event.returning_item)
316326

317327
def test_edit_notify(self):
318-
make_test_data()
319-
320-
charter = Group.objects.get(acronym="mars").charter
328+
charter=CharterFactory()
321329

322330
url = urlreverse('ietf.doc.views_doc.edit_notify;charter', kwargs=dict(name=charter.name))
323331
login_testing_unauthorized(self, "secretary", url)
@@ -346,9 +354,8 @@ def test_edit_notify(self):
346354
self.assertEqual(formlist, None)
347355

348356
def test_edit_ad(self):
349-
make_test_data()
350357

351-
charter = Group.objects.get(acronym="mars").charter
358+
charter = CharterFactory()
352359

353360
url = urlreverse('ietf.doc.views_charter.edit_ad', kwargs=dict(name=charter.name))
354361
login_testing_unauthorized(self, "secretary", url)
@@ -369,10 +376,8 @@ def test_edit_ad(self):
369376
self.assertEqual(charter.ad, ad2)
370377

371378
def test_submit_charter(self):
372-
make_test_data()
373-
374-
group = Group.objects.get(acronym="mars")
375-
charter = group.charter
379+
charter = CharterFactory()
380+
group = charter.group
376381

377382
url = urlreverse('ietf.doc.views_charter.submit', kwargs=dict(name=charter.name))
378383
login_testing_unauthorized(self, "secretary", url)
@@ -411,15 +416,7 @@ def test_submit_charter(self):
411416
"Windows line\nMac line\nUnix line\n" + utf_8_snippet)
412417

413418
def test_submit_initial_charter(self):
414-
make_test_data()
415-
416-
group = Group.objects.get(acronym="mars")
417-
# get rid of existing charter
418-
charter = group.charter
419-
group.charter = None
420-
group.save()
421-
charter.delete()
422-
charter = None
419+
group = GroupFactory(type_id='wg',acronym='mars',list_email='mars-wg@ietf.org')
423420

424421
url = urlreverse('ietf.doc.views_charter.submit', kwargs=dict(name=charter_name_for_group(group)))
425422
login_testing_unauthorized(self, "secretary", url)
@@ -445,8 +442,10 @@ def test_submit_initial_charter(self):
445442
self.assertEqual(group.charter, charter)
446443

447444
def test_edit_review_announcement_text(self):
448-
draft = make_test_data()
449-
charter = draft.group.charter
445+
area = GroupFactory(type_id='area')
446+
RoleFactory(name_id='ad',group=area,person=Person.objects.get(user__username='ad'))
447+
charter = CharterFactory(group__parent=area,group__list_email='mars-wg@ietf.org')
448+
group = charter.group
450449

451450
url = urlreverse('ietf.doc.views_charter.review_announcement_text', kwargs=dict(name=charter.name))
452451
self.client.logout()
@@ -461,7 +460,7 @@ def test_edit_review_announcement_text(self):
461460

462461
by = Person.objects.get(user__username="secretary")
463462

464-
(e1, e2) = default_review_text(draft.group, charter, by)
463+
(e1, e2) = default_review_text(group, charter, by)
465464
announcement_text = e1.text
466465
new_work_text = e2.text
467466

@@ -509,12 +508,14 @@ def test_edit_review_announcement_text(self):
509508
self.assertEqual(r.status_code, 200)
510509
q = PyQuery(r.content)
511510
charter = Document.objects.get(name=charter.name)
512-
self.assertTrue(draft.group.name in charter.latest_event(WriteupDocEvent, type="changed_review_announcement").text)
513-
self.assertTrue(draft.group.name in charter.latest_event(WriteupDocEvent, type="changed_new_work_text").text)
511+
self.assertTrue(group.name in charter.latest_event(WriteupDocEvent, type="changed_review_announcement").text)
512+
self.assertTrue(charter.group.name in charter.latest_event(WriteupDocEvent, type="changed_new_work_text").text)
514513

515514
def test_edit_action_announcement_text(self):
516-
draft = make_test_data()
517-
charter = draft.group.charter
515+
area = GroupFactory(type_id='area')
516+
RoleFactory(name_id='ad',group=area,person=Person.objects.get(user__username='ad'))
517+
charter = CharterFactory(group__parent=area)
518+
group = charter.group
518519

519520
url = urlreverse('ietf.doc.views_charter.action_announcement_text', kwargs=dict(name=charter.name))
520521
self.client.logout()
@@ -541,11 +542,12 @@ def test_edit_action_announcement_text(self):
541542
self.assertEqual(r.status_code, 200)
542543
q = PyQuery(r.content)
543544
charter = Document.objects.get(name=charter.name)
544-
self.assertTrue(draft.group.name in charter.latest_event(WriteupDocEvent, type="changed_action_announcement").text)
545+
self.assertTrue(group.name in charter.latest_event(WriteupDocEvent, type="changed_action_announcement").text)
545546

546547
def test_edit_ballot_writeupnotes(self):
547-
draft = make_test_data()
548-
charter = draft.group.charter
548+
area = GroupFactory(type_id='area')
549+
RoleFactory(name_id='ad',group=area,person=Person.objects.get(user__username='ad'))
550+
charter = CharterFactory(group__parent=area)
549551
by = Person.objects.get(user__username="secretary")
550552

551553
BallotDocEvent.objects.create(
@@ -560,7 +562,7 @@ def test_edit_ballot_writeupnotes(self):
560562
url = urlreverse('ietf.doc.views_charter.ballot_writeupnotes', kwargs=dict(name=charter.name))
561563
login_testing_unauthorized(self, "secretary", url)
562564

563-
e = default_action_text(draft.group, charter, by)
565+
e = default_action_text(charter.group, charter, by)
564566
e.save()
565567

566568
# normal get
@@ -585,10 +587,12 @@ def test_edit_ballot_writeupnotes(self):
585587
self.assertTrue('Evaluation' in outbox[0]['Subject'])
586588

587589
def test_approve(self):
588-
make_test_data()
589-
590-
group = Group.objects.get(acronym="ames")
591-
charter = group.charter
590+
area = GroupFactory(type_id='area')
591+
RoleFactory(name_id='ad',group=area,person=Person.objects.get(user__username='ad'))
592+
charter = CharterFactory(group__acronym='ames',group__list_email='ames-wg@ietf.org',group__parent=area)
593+
group = charter.group
594+
RoleFactory(name_id='chair',group=group,person__name=u'Ames Man',person__user__email='ameschairman@ietf.org')
595+
RoleFactory(name_id='secr',group=group,person__name=u'Secretary',person__user__email='amessecretary@ietf.org')
592596

593597
url = urlreverse('ietf.doc.views_charter.approve', kwargs=dict(name=charter.name))
594598
login_testing_unauthorized(self, "secretary", url)
@@ -676,15 +680,14 @@ def test_approve(self):
676680
self.assertEqual(group.groupmilestone_set.filter(state="active", desc=m4.desc).count(), 1)
677681

678682
def test_charter_with_milestones(self):
679-
draft = make_test_data()
680-
charter = draft.group.charter
683+
charter = CharterFactory()
681684

682685
NewRevisionDocEvent.objects.create(doc=charter,
683686
type="new_revision",
684687
rev=charter.rev,
685688
by=Person.objects.get(name="(System)"))
686689

687-
m = GroupMilestone.objects.create(group=draft.group,
690+
m = GroupMilestone.objects.create(group=charter.group,
688691
state_id="active",
689692
desc="Test milestone",
690693
due=datetime.date.today(),

release-coverage.json.gz

86.9 KB
Binary file not shown.

0 commit comments

Comments
 (0)