Cleaner charter factory simplifies test code. Commit ready for merge.
- Legacy-Id: 14899
This commit is contained in:
parent
f11907b6a0
commit
8026f86cd3
|
@ -11,14 +11,12 @@ def draft_name_generator(type_id,group,n):
|
||||||
n,
|
n,
|
||||||
)
|
)
|
||||||
|
|
||||||
class DocumentFactory(factory.DjangoModelFactory):
|
class BaseDocumentFactory(factory.DjangoModelFactory):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Document
|
model = Document
|
||||||
|
|
||||||
type_id = 'draft'
|
|
||||||
title = factory.Faker('sentence',nb_words=6)
|
title = factory.Faker('sentence',nb_words=6)
|
||||||
rev = '00'
|
rev = '00'
|
||||||
group = factory.SubFactory('ietf.group.factories.GroupFactory',type_id='individ')
|
|
||||||
std_level_id = None
|
std_level_id = None
|
||||||
intended_std_level_id = None
|
intended_std_level_id = None
|
||||||
|
|
||||||
|
@ -58,6 +56,22 @@ class DocumentFactory(factory.DjangoModelFactory):
|
||||||
obj._has_an_event_so_saving_is_allowed = True
|
obj._has_an_event_so_saving_is_allowed = True
|
||||||
obj.save()
|
obj.save()
|
||||||
|
|
||||||
|
class DocumentFactory(BaseDocumentFactory):
|
||||||
|
|
||||||
|
type_id = 'draft'
|
||||||
|
group = factory.SubFactory('ietf.group.factories.GroupFactory',type_id='individ')
|
||||||
|
|
||||||
|
class CharterFactory(BaseDocumentFactory):
|
||||||
|
|
||||||
|
type_id = 'charter'
|
||||||
|
group = factory.SubFactory('ietf.group.factories.GroupFactory',type_id='individ')
|
||||||
|
|
||||||
|
@factory.post_generation
|
||||||
|
def set_group_charter_document(obj, create, extracted, **kwargs):
|
||||||
|
if not create:
|
||||||
|
return
|
||||||
|
obj.group.charter = extracted or obj
|
||||||
|
obj.group.save()
|
||||||
|
|
||||||
class DocAliasFactory(factory.DjangoModelFactory):
|
class DocAliasFactory(factory.DjangoModelFactory):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
|
@ -10,13 +10,13 @@ from django.urls import reverse as urlreverse
|
||||||
|
|
||||||
import debug # pyflakes:ignore
|
import debug # pyflakes:ignore
|
||||||
|
|
||||||
from ietf.doc.factories import DocumentFactory
|
from ietf.doc.factories import DocumentFactory, CharterFactory
|
||||||
from ietf.doc.models import ( Document, State, BallotDocEvent, BallotType, NewRevisionDocEvent,
|
from ietf.doc.models import ( Document, State, BallotDocEvent, BallotType, NewRevisionDocEvent,
|
||||||
TelechatDocEvent, WriteupDocEvent )
|
TelechatDocEvent, WriteupDocEvent )
|
||||||
from ietf.doc.utils_charter import ( next_revision, default_review_text, default_action_text,
|
from ietf.doc.utils_charter import ( next_revision, default_review_text, default_action_text,
|
||||||
charter_name_for_group )
|
charter_name_for_group )
|
||||||
from ietf.doc.utils import close_open_ballots
|
from ietf.doc.utils import close_open_ballots
|
||||||
from ietf.group.factories import RoleFactory, GroupFactory
|
from ietf.group.factories import RoleFactory
|
||||||
from ietf.group.models import Group, GroupMilestone
|
from ietf.group.models import Group, GroupMilestone
|
||||||
from ietf.iesg.models import TelechatDate
|
from ietf.iesg.models import TelechatDate
|
||||||
from ietf.person.models import Person
|
from ietf.person.models import Person
|
||||||
|
@ -157,11 +157,7 @@ class EditCharterTests(TestCase):
|
||||||
self.assertTrue("A new charter" in outbox[-3].get_payload())
|
self.assertTrue("A new charter" in outbox[-3].get_payload())
|
||||||
|
|
||||||
def test_abandon_bof(self):
|
def test_abandon_bof(self):
|
||||||
group = GroupFactory(type_id='ietf',state_id='bof')
|
charter = CharterFactory(group__state_id='bof',group__type_id='wg')
|
||||||
charter = DocumentFactory(type_id='charter',group=group)
|
|
||||||
# This points to some more work to do in the factories
|
|
||||||
group.charter = charter
|
|
||||||
group.save()
|
|
||||||
url = urlreverse('ietf.doc.views_charter.change_state',kwargs={'name':charter.name,'option':'abandon'})
|
url = urlreverse('ietf.doc.views_charter.change_state',kwargs={'name':charter.name,'option':'abandon'})
|
||||||
login_testing_unauthorized(self, "secretary", url)
|
login_testing_unauthorized(self, "secretary", url)
|
||||||
response=self.client.get(url)
|
response=self.client.get(url)
|
||||||
|
@ -173,11 +169,7 @@ class EditCharterTests(TestCase):
|
||||||
self.assertTrue('Testing Abandoning' in charter.docevent_set.filter(type='added_comment').first().desc)
|
self.assertTrue('Testing Abandoning' in charter.docevent_set.filter(type='added_comment').first().desc)
|
||||||
|
|
||||||
def test_change_title(self):
|
def test_change_title(self):
|
||||||
group = GroupFactory(type_id='ietf')
|
charter = CharterFactory(group__type_id='wg')
|
||||||
charter = DocumentFactory(type_id='charter',group=group)
|
|
||||||
# This points to some more work to do in the factories
|
|
||||||
group.charter = charter
|
|
||||||
group.save()
|
|
||||||
url = urlreverse('ietf.doc.views_charter.change_title',kwargs={'name':charter.name})
|
url = urlreverse('ietf.doc.views_charter.change_title',kwargs={'name':charter.name})
|
||||||
login_testing_unauthorized(self, "secretary", url)
|
login_testing_unauthorized(self, "secretary", url)
|
||||||
response=self.client.get(url)
|
response=self.client.get(url)
|
||||||
|
|
Loading…
Reference in a new issue