Merged in [18701] from jennifer@painless-security.com:
Improve group 'about' link text on doc page. Fixes #3066.
- Legacy-Id: 18704
Note: SVN reference [18701] has been migrated to Git commit cde31ce72f
This commit is contained in:
commit
7b02847149
|
@ -752,6 +752,61 @@ Man Expires September 22, 2015 [Page 3]
|
|||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name="draft-xyz123")))
|
||||
self.assertEqual(r.status_code, 404)
|
||||
|
||||
def assert_correct_wg_group_link(self, r, group):
|
||||
"""Assert correct format for WG-like group types"""
|
||||
self.assertContains(
|
||||
r,
|
||||
'(<a href="%(about_url)s">%(group_acro)s %(group_type)s</a>)' % {
|
||||
"group_acro": group.acronym,
|
||||
"group_type": group.type,
|
||||
"about_url": group.about_url(),
|
||||
},
|
||||
msg_prefix='WG-like group %s (%s) should include group type in link' % (group.acronym, group.type),
|
||||
)
|
||||
|
||||
def assert_correct_non_wg_group_link(self, r, group):
|
||||
"""Assert correct format for non-WG-like group types"""
|
||||
self.assertContains(
|
||||
r,
|
||||
'(<a href="%(about_url)s">%(group_acro)s</a>)' % {
|
||||
"group_acro": group.acronym,
|
||||
"about_url": group.about_url(),
|
||||
},
|
||||
msg_prefix='Non-WG-like group %s (%s) should not include group type in link' % (group.acronym, group.type),
|
||||
)
|
||||
|
||||
def test_draft_group_link(self):
|
||||
"""Link to group 'about' page should have correct format"""
|
||||
for group_type_id in ['wg', 'rg', 'ag']:
|
||||
group = GroupFactory(type_id=group_type_id)
|
||||
draft = WgDraftFactory(name='draft-document-%s' % group_type_id, group=group)
|
||||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=draft.name)))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assert_correct_wg_group_link(r, group)
|
||||
|
||||
rfc = WgRfcFactory(name='draft-rfc-document-%s' % group_type_id, group=group)
|
||||
DocEventFactory.create(doc=rfc, type='published_rfc', time = '2010-10-10')
|
||||
# get the rfc name to avoid a redirect
|
||||
rfc_name = rfc.docalias.filter(name__startswith='rfc').first().name
|
||||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=rfc_name)))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assert_correct_wg_group_link(r, group)
|
||||
|
||||
for group_type_id in ['ietf', 'team']:
|
||||
group = GroupFactory(type_id=group_type_id)
|
||||
draft = WgDraftFactory(name='draft-document-%s' % group_type_id, group=group)
|
||||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=draft.name)))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assert_correct_non_wg_group_link(r, group)
|
||||
|
||||
rfc = WgRfcFactory(name='draft-rfc-document-%s' % group_type_id, group=group)
|
||||
DocEventFactory.create(doc=rfc, type='published_rfc', time = '2010-10-10')
|
||||
# get the rfc name to avoid a redirect
|
||||
rfc_name = rfc.docalias.filter(name__startswith='rfc').first().name
|
||||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=rfc_name)))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assert_correct_non_wg_group_link(r, group)
|
||||
|
||||
def test_document_primary_and_history_views(self):
|
||||
IndividualDraftFactory(name='draft-imaginary-independent-submission')
|
||||
ConflictReviewFactory(name='conflict-review-imaginary-irtf-submission')
|
||||
|
|
|
@ -47,7 +47,6 @@ from django.http import HttpResponse, Http404
|
|||
from django.shortcuts import render, get_object_or_404, redirect
|
||||
from django.template.loader import render_to_string
|
||||
from django.urls import reverse as urlreverse
|
||||
from django.urls.exceptions import NoReverseMatch
|
||||
from django.conf import settings
|
||||
from django import forms
|
||||
|
||||
|
@ -296,11 +295,11 @@ def document_main(request, name, rev=None):
|
|||
elif group.type_id == "area" and doc.stream_id == "ietf":
|
||||
submission = "individual in %s area" % group.acronym
|
||||
else:
|
||||
submission = "%s %s" % (group.acronym, group.type)
|
||||
try:
|
||||
submission = "<a href=\"%s\">%s</a>" % (urlreverse("ietf.group.views.group_home", kwargs=dict(group_type=group.type_id, acronym=group.acronym)), submission)
|
||||
except NoReverseMatch:
|
||||
pass
|
||||
if group.features.acts_like_wg:
|
||||
submission = "%s %s" % (group.acronym, group.type)
|
||||
else:
|
||||
submission = group.acronym
|
||||
submission = "<a href=\"%s\">%s</a>" % (group.about_url(), submission)
|
||||
if doc.stream_id and doc.get_state_slug("draft-stream-%s" % doc.stream_id) == "c-adopt":
|
||||
submission = "candidate for %s" % submission
|
||||
|
||||
|
|
Loading…
Reference in a new issue