find my team: Canonicalize URL route.

Change URL endpoint to use underscores, not dashes, and change name to use
the full path to the view function. See e.g. /create_realm.
This commit is contained in:
Rishi Gupta
2017-01-05 18:31:48 -08:00
committed by Tim Abbott
parent 757297b72f
commit fdb47fc5ee
4 changed files with 11 additions and 11 deletions

View File

@@ -87,7 +87,7 @@
{% if find_team_link_disabled %} {% if find_team_link_disabled %}
{% else %} {% else %}
<li><span class="little-bullet">·</span></li> <li><span class="little-bullet">·</span></li>
<li><a href="{{ server_uri }}/find-my-team">{{ _('Find my team') }}</a></li> <li><a href="{{ server_uri }}/find_my_team">{{ _('Find my team') }}</a></li>
{% endif %} {% endif %}
</ul> </ul>
</div> </div>

View File

@@ -2308,12 +2308,12 @@ class TestLoginPage(ZulipTestCase):
class FindMyTeamTestCase(ZulipTestCase): class FindMyTeamTestCase(ZulipTestCase):
def test_template(self): def test_template(self):
# type: () -> None # type: () -> None
result = self.client_get('/find-my-team/') result = self.client_get('/find_my_team/')
self.assertIn("Find your team", result.content.decode('utf8')) self.assertIn("Find your team", result.content.decode('utf8'))
def test_result(self): def test_result(self):
# type: () -> None # type: () -> None
url = '/find-my-team/?emails=iago@zulip.com,cordelia@zulip.com' url = '/find_my_team/?emails=iago@zulip.com,cordelia@zulip.com'
result = self.client_get(url) result = self.client_get(url)
content = result.content.decode('utf8') content = result.content.decode('utf8')
self.assertIn("Emails sent! You will only receive emails", content) self.assertIn("Emails sent! You will only receive emails", content)
@@ -2323,28 +2323,28 @@ class FindMyTeamTestCase(ZulipTestCase):
def test_find_team_zero_emails(self): def test_find_team_zero_emails(self):
# type: () -> None # type: () -> None
data = {'emails': ''} data = {'emails': ''}
result = self.client_post('/find-my-team/', data) result = self.client_post('/find_my_team/', data)
self.assertIn('This field is required', result.content.decode('utf8')) self.assertIn('This field is required', result.content.decode('utf8'))
self.assertEqual(result.status_code, 200) self.assertEqual(result.status_code, 200)
def test_find_team_one_email(self): def test_find_team_one_email(self):
# type: () -> None # type: () -> None
data = {'emails': 'hamlet@zulip.com'} data = {'emails': 'hamlet@zulip.com'}
result = self.client_post('/find-my-team/', data) result = self.client_post('/find_my_team/', data)
self.assertEqual(result.status_code, 302) self.assertEqual(result.status_code, 302)
self.assertEqual(result.url, '/find-my-team/?emails=hamlet%40zulip.com') self.assertEqual(result.url, '/find_my_team/?emails=hamlet%40zulip.com')
def test_find_team_multiple_emails(self): def test_find_team_multiple_emails(self):
# type: () -> None # type: () -> None
data = {'emails': 'hamlet@zulip.com,iago@zulip.com'} data = {'emails': 'hamlet@zulip.com,iago@zulip.com'}
result = self.client_post('/find-my-team/', data) result = self.client_post('/find_my_team/', data)
self.assertEqual(result.status_code, 302) self.assertEqual(result.status_code, 302)
expected = '/find-my-team/?emails=hamlet%40zulip.com%2Ciago%40zulip.com' expected = '/find_my_team/?emails=hamlet%40zulip.com%2Ciago%40zulip.com'
self.assertEqual(result.url, expected) self.assertEqual(result.url, expected)
def test_find_team_more_than_ten_emails(self): def test_find_team_more_than_ten_emails(self):
# type: () -> None # type: () -> None
data = {'emails': ','.join(['hamlet-{}@zulip.com'.format(i) for i in range(11)])} data = {'emails': ','.join(['hamlet-{}@zulip.com'.format(i) for i in range(11)])}
result = self.client_post('/find-my-team/', data) result = self.client_post('/find_my_team/', data)
self.assertEqual(result.status_code, 200) self.assertEqual(result.status_code, 200)
self.assertIn("Please enter at most 10", result.content.decode('utf8')) self.assertIn("Please enter at most 10", result.content.decode('utf8'))

View File

@@ -725,7 +725,7 @@ def send_find_my_team_emails(user_profile):
def find_my_team(request): def find_my_team(request):
# type: (HttpRequest) -> HttpResponse # type: (HttpRequest) -> HttpResponse
url = reverse('find-my-team') url = reverse('zerver.views.find_my_team')
emails = [] # type: List[Text] emails = [] # type: List[Text]
if request.method == 'POST': if request.method == 'POST':

View File

@@ -131,7 +131,7 @@ i18n_urls = [
name='landing-page'), name='landing-page'),
url(r'^new-user/$', RedirectView.as_view(url='/hello', permanent=True)), url(r'^new-user/$', RedirectView.as_view(url='/hello', permanent=True)),
url(r'^features/$', TemplateView.as_view(template_name='zerver/features.html')), url(r'^features/$', TemplateView.as_view(template_name='zerver/features.html')),
url(r'^find-my-team/$', zerver.views.find_my_team, name='find-my-team'), url(r'^find_my_team/$', zerver.views.find_my_team, name='zerver.views.find_my_team'),
] ]
# If a Terms of Service is supplied, add that route # If a Terms of Service is supplied, add that route