Merged in [19654] from rjsparks@nostrum.com:
Repair document_main when there are status change relationships.
- Legacy-Id: 19655
Note: SVN reference [19654] has been migrated to Git commit cfe9d7f808
This commit is contained in:
commit
4dce42d23f
|
@ -231,6 +231,33 @@ class CharterFactory(BaseDocumentFactory):
|
|||
obj.group.charter = extracted or obj
|
||||
obj.group.save()
|
||||
|
||||
class StatusChangeFactory(BaseDocumentFactory):
|
||||
type_id='statchg'
|
||||
|
||||
group = factory.SubFactory('ietf.group.factories.GroupFactory',acronym='iesg',type_id='ietf')
|
||||
name = factory.Sequence(lambda n: f'status-change-{n}-factoried')
|
||||
|
||||
@factory.post_generation
|
||||
def changes_status_of(obj, create, extracted, **kwargs):
|
||||
if not create:
|
||||
return
|
||||
if extracted:
|
||||
for (rel, target) in extracted:
|
||||
obj.relateddocument_set.create(relationship_id=rel,target=extracted)
|
||||
else:
|
||||
obj.relateddocument_set.create(relationship_id='tobcp', target=WgRfcFactory().docalias.first())
|
||||
|
||||
@factory.post_generation
|
||||
def states(obj, create, extracted, **kwargs):
|
||||
if not create:
|
||||
return
|
||||
if extracted:
|
||||
for state in extracted:
|
||||
obj.set_state(state)
|
||||
else:
|
||||
obj.set_state(State.objects.get(type_id='statchg',slug='appr-sent'))
|
||||
|
||||
|
||||
class ConflictReviewFactory(BaseDocumentFactory):
|
||||
type_id='conflrev'
|
||||
|
||||
|
|
|
@ -34,7 +34,8 @@ from ietf.doc.models import ( Document, DocAlias, DocRelationshipName, RelatedDo
|
|||
from ietf.doc.factories import ( DocumentFactory, DocEventFactory, CharterFactory,
|
||||
ConflictReviewFactory, WgDraftFactory, IndividualDraftFactory, WgRfcFactory,
|
||||
IndividualRfcFactory, StateDocEventFactory, BallotPositionDocEventFactory,
|
||||
BallotDocEventFactory, DocumentAuthorFactory, NewRevisionDocEventFactory)
|
||||
BallotDocEventFactory, DocumentAuthorFactory, NewRevisionDocEventFactory,
|
||||
StatusChangeFactory)
|
||||
from ietf.doc.fields import SearchableDocumentsField
|
||||
from ietf.doc.utils import create_ballot_if_not_open, uppercase_std_abbreviated_name
|
||||
from ietf.group.models import Group
|
||||
|
@ -1440,6 +1441,13 @@ Man Expires September 22, 2015 [Page 3]
|
|||
|
||||
|
||||
class DocTestCase(TestCase):
|
||||
def test_status_change(self):
|
||||
statchg = StatusChangeFactory()
|
||||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=statchg.name)))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=statchg.relateddocument_set.first().target.document.canonical_name())))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
|
||||
def test_document_charter(self):
|
||||
CharterFactory(name='charter-ietf-mars')
|
||||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name="charter-ietf-mars")))
|
||||
|
|
|
@ -61,8 +61,8 @@
|
|||
{% if updated_by %}<div>Updated by {{ updated_by|urlize_related_source_list|join:", " }}</div>{% endif %}
|
||||
{% if obsoletes %}<div>Obsoletes {{ obsoletes|urlize_related_target_list|join:", " }}</div>{% endif %}
|
||||
{% if updates %}<div> Updates {{ updates|urlize_related_target_list|join:", " }}</div>{% endif %}
|
||||
{% if status_changes %}<div>Status changed by {{ status_changes|join:", "|urlize_related_source_list }}</div>{% endif %}
|
||||
{% if proposed_status_changes %}<div>Proposed status changed by {{ proposed_status_changes|join:", "|urlize_related_source_list }}</div>{% endif %}
|
||||
{% if status_changes %}<div>Status changed by {{ status_changes|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
||||
{% if proposed_status_changes %}<div>Proposed status changed by {{ proposed_status_changes|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
||||
{% if rfc_aliases %}<div>Also known as {{ rfc_aliases|join:", "|urlize_ietf_docs }}</div>{% endif %}
|
||||
{% if draft_name %}<div>Was <a href="/doc/{{ draft_name}}/">{{ draft_name }}</a> {% if submission %}({{ submission|safe }}){% endif %}</div>{% endif %}
|
||||
{% else %}
|
||||
|
|
Loading…
Reference in a new issue