From b86bd842783c058b09ecb1050a9a61b8daaeb8c9 Mon Sep 17 00:00:00 2001 From: Robert Sparks Date: Wed, 13 Jun 2018 22:09:01 +0000 Subject: [PATCH] Improvements to tests after converting to factories suggested by studying coverage_changes. Commit ready to merge. - Legacy-Id: 15248 --- ietf/doc/tests.py | 10 +++++++-- ietf/doc/tests_ballot.py | 8 +++++--- ietf/doc/tests_charter.py | 2 +- ietf/utils/test_data.py | 43 --------------------------------------- 4 files changed, 14 insertions(+), 49 deletions(-) diff --git a/ietf/doc/tests.py b/ietf/doc/tests.py index 271b587be..e4443a191 100644 --- a/ietf/doc/tests.py +++ b/ietf/doc/tests.py @@ -26,6 +26,7 @@ from ietf.doc.factories import DocumentFactory, DocEventFactory, CharterFactory, from ietf.doc.utils import create_ballot_if_not_open from ietf.group.models import Group from ietf.group.factories import GroupFactory +from ietf.ipr.factories import HolderIprDisclosureFactory from ietf.meeting.models import Meeting, Session, SessionPresentation from ietf.meeting.factories import MeetingFactory, SessionFactory from ietf.name.models import SessionStatusName @@ -252,10 +253,12 @@ class SearchTests(TestCase): def test_indexes(self): draft = IndividualDraftFactory() + rfc = WgRfcFactory() r = self.client.get(urlreverse('ietf.doc.views_search.index_all_drafts')) self.assertEqual(r.status_code, 200) - self.assertTrue(draft.name in unicontent(r)) + self.assertIn(draft.name, unicontent(r)) + self.assertIn(rfc.canonical_name().upper(),unicontent(r)) r = self.client.get(urlreverse('ietf.doc.views_search.index_active_drafts')) self.assertEqual(r.status_code, 200) @@ -476,6 +479,9 @@ Man Expires September 22, 2015 [Page 3] def test_document_draft(self): draft = WgDraftFactory(name='draft-ietf-mars-test',rev='01') + HolderIprDisclosureFactory(docs=[draft]) + replaced = IndividualDraftFactory() + draft.relateddocument_set.create(relationship_id='replaces',source=draft,target=replaced.docalias_set.first()) # these tests aren't testing all attributes yet, feel free to # expand them @@ -532,7 +538,7 @@ Man Expires September 22, 2015 [Page 3] q = PyQuery(r.content) self.assertEqual(len(q('.rfcmarkup pre')), 4) self.assertEqual(len(q('.rfcmarkup span.h1')), 2) - self.assertEqual(len(q('.rfcmarkup a[href]')), 29) + self.assertEqual(len(q('.rfcmarkup a[href]')), 31) r = self.client.get(urlreverse("ietf.doc.views_doc.document_html", kwargs=dict(name=draft.name, rev=draft.rev))) self.assertEqual(r.status_code, 200) diff --git a/ietf/doc/tests_ballot.py b/ietf/doc/tests_ballot.py index b25f73772..0ccac786f 100644 --- a/ietf/doc/tests_ballot.py +++ b/ietf/doc/tests_ballot.py @@ -12,6 +12,7 @@ from ietf.doc.factories import DocumentFactory, IndividualDraftFactory, Individu from ietf.doc.utils import create_ballot_if_not_open from ietf.group.models import Group, Role from ietf.group.factories import GroupFactory, RoleFactory +from ietf.ipr.factories import HolderIprDisclosureFactory from ietf.name.models import BallotPositionName from ietf.iesg.models import TelechatDate from ietf.person.models import Person, PersonalApiKey @@ -435,7 +436,7 @@ class BallotWriteupsTests(TestCase): def test_edit_approval_text(self): ad = Person.objects.get(user__username="ad") - draft = WgDraftFactory(ad=ad,states=[('draft','active'),('draft-iesg','iesg-eva')],intended_std_level_id='ps') + draft = WgDraftFactory(ad=ad,states=[('draft','active'),('draft-iesg','iesg-eva')],intended_std_level_id='ps',group__parent=Group.objects.get(acronym='farfut')) url = urlreverse('ietf.doc.views_ballot.ballot_approvaltext', kwargs=dict(name=draft.name)) login_testing_unauthorized(self, "secretary", url) @@ -674,8 +675,8 @@ class ApproveBallotTests(TestCase): class MakeLastCallTests(TestCase): def test_make_last_call(self): ad = Person.objects.get(user__username="ad") - draft = WgDraftFactory(name='draft-ietf-mars-test',group__acronym='mars',ad=ad) - draft.set_state(State.objects.get(used=True, type="draft-iesg", slug="lc-req")) + draft = WgDraftFactory(name='draft-ietf-mars-test',group__acronym='mars',ad=ad,states=[('draft-iesg','lc-req')],intended_std_level_id='ps') + HolderIprDisclosureFactory(docs=[draft]) url = urlreverse('ietf.doc.views_ballot.make_last_call', kwargs=dict(name=draft.name)) login_testing_unauthorized(self, "secretary", url) @@ -707,6 +708,7 @@ class MakeLastCallTests(TestCase): self.assertTrue("ietf-announce@" in outbox[-2]['To']) for prefix in ['draft-ietf-mars-test','mars-chairs','aread']: self.assertTrue(prefix+"@" in outbox[-2]['Cc']) + self.assertIn("The following IPR Declarations",outbox[-2].get_payload()) self.assertTrue("Last Call" in outbox[-1]['Subject']) self.assertTrue("drafts-lastcall@icann.org" in outbox[-1]['To']) diff --git a/ietf/doc/tests_charter.py b/ietf/doc/tests_charter.py index 50fdf0261..130590c39 100644 --- a/ietf/doc/tests_charter.py +++ b/ietf/doc/tests_charter.py @@ -589,7 +589,7 @@ class EditCharterTests(TestCase): def test_approve(self): area = GroupFactory(type_id='area') RoleFactory(name_id='ad',group=area,person=Person.objects.get(user__username='ad')) - charter = CharterFactory(group__acronym='ames',group__list_email='ames-wg@ietf.org',group__parent=area) + charter = CharterFactory(group__acronym='ames',group__list_email='ames-wg@ietf.org',group__parent=area,group__state_id='bof') group = charter.group RoleFactory(name_id='chair',group=group,person__name=u'Ames Man',person__user__email='ameschairman@ietf.org') RoleFactory(name_id='secr',group=group,person__name=u'Secretary',person__user__email='amessecretary@ietf.org') diff --git a/ietf/utils/test_data.py b/ietf/utils/test_data.py index 072e3ffd5..51b816b41 100644 --- a/ietf/utils/test_data.py +++ b/ietf/utils/test_data.py @@ -413,49 +413,6 @@ def make_test_data(): return draft -def make_downref_test_data(): - # Add an additional draft that has a downref - ad = Person.objects.get(user__username="ad") - mars_wg = Group.objects.get(acronym="mars") - - draft = Document.objects.create( - name="draft-ietf-mars-approved-document", - time=datetime.datetime.now(), - type_id="draft", - title="Martian Network Frameworks", - stream_id="ietf", - group=mars_wg, - abstract="Frameworks for building Martian networks.", - rev="01", - pages=2, - intended_std_level_id="ps", - ad=ad, - expires=datetime.datetime.now() + datetime.timedelta(days=settings.INTERNET_DRAFT_DAYS_TO_EXPIRE), - notify="aliens@example.mars", - note="", - ) - - draft.set_state(State.objects.get(used=True, type="draft", slug="active")) - draft.set_state(State.objects.get(used=True, type="draft-iesg", slug="rfcqueue")) - draft.set_state(State.objects.get(used=True, type="draft-stream-%s" % draft.stream_id, slug="wg-doc")) - - DocAlias.objects.create( - document=draft, - name=draft.name, - ) - - DocumentAuthor.objects.create( - document=draft, - person=Person.objects.get(email__address="aread@ietf.org"), - email=Email.objects.get(address="aread@ietf.org"), - country="US", - affiliation="", - order=1 - ) - - rfc_doc_alias = DocAlias.objects.get(name='rfc9998') - RelatedDocument.objects.create(source=draft, target=rfc_doc_alias, relationship_id='downref-approval') - return draft def make_review_data(doc):