Merge lp:~zematynnad/rnr-server/non_ascii_741909 into lp:rnr-server

Proposed by Danny Tamez
Status: Merged
Approved by: Michael Nelson
Approved revision: 170
Merged at revision: 170
Proposed branch: lp:~zematynnad/rnr-server/non_ascii_741909
Merge into: lp:rnr-server
Diff against target: 43 lines (+17/-1)
2 files modified
src/reviewsapp/templatetags/reviewsapp.py (+1/-1)
src/reviewsapp/tests/test_views.py (+16/-0)
To merge this branch: bzr merge lp:~zematynnad/rnr-server/non_ascii_741909
Reviewer Review Type Date Requested Status
Michael Nelson (community) Approve
Review via email: mp+54771@code.launchpad.net

Commit message

[r=noodles][bug=741909] template_tag was formatting an ascii string with unicode parameters and blowing up. Now using a unicode string.

Description of the change

template_tag was formatting an ascii string with unicode parameters and blowing up. Now using a unicode string. Added a test for this condition.

This was blocking use of the moderation view for QA - so... they should be able to get to it now.

To post a comment you must log in.
Revision history for this message
Michael Nelson (michael.nelson) wrote :

Wonderful.... thanks Danny!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/reviewsapp/templatetags/reviewsapp.py'
2--- src/reviewsapp/templatetags/reviewsapp.py 2011-03-23 16:21:12 +0000
3+++ src/reviewsapp/templatetags/reviewsapp.py 2011-03-24 19:56:36 +0000
4@@ -49,7 +49,7 @@
5 if name == "":
6 name = user.username
7
8- result = '<a href="https://launchpad.net/~{0}">{1}</a>'.format(
9+ result = u'<a href="https://launchpad.net/~{0}">{1}</a>'.format(
10 escape(user.username), escape(name))
11 return mark_safe(result)
12 lp_user.needs_autoescape = True
13
14=== modified file 'src/reviewsapp/tests/test_views.py'
15--- src/reviewsapp/tests/test_views.py 2011-03-23 16:21:12 +0000
16+++ src/reviewsapp/tests/test_views.py 2011-03-24 19:56:36 +0000
17@@ -1,3 +1,4 @@
18+#
19 # This file is part of Software Center Ratings and Reviews
20 # Copyright (C) 2010 Canonical Ltd.
21 #
22@@ -190,6 +191,21 @@
23 '<a href="https://launchpad.net/~{0}">{1}</a>'.format(
24 reviewer.username, reviewer.get_full_name()))
25
26+ def test_non_ascii_reviewer(self):
27+ moderation = self.factory.makeReviewModeration(language='en')
28+ reviewer = moderation.review.reviewer
29+ reviewer.username = u'\xa1'
30+ reviewer.first_name = u'\xa2'
31+ reviewer.last_name = u'\xa3'
32+ reviewer.save()
33+
34+ response = self._request_url_as_moderator()
35+
36+ self.assertContains(response,
37+ u'<a href="https://launchpad.net/~{0}">{1}</a>'.format(
38+ reviewer.username, reviewer.get_full_name()))
39+
40+
41 def test_includes_next_url_with_get_params(self):
42 # The next_url inludes current filtering options.
43 response = self._request_url_as_moderator(data=dict(language='en'))

Subscribers

People subscribed via source and target branches