Commit a3caac1f by attiyaIshaque

Merge pull request #11789 from edx/atiya/ECOM-3613-certificates-email-address

Email address with '+' is accepted by Student Support.
parents d29dcc16 751890b3
......@@ -159,6 +159,21 @@ class CertificateSearchTests(CertificateSupportTestCase):
else:
self.assertEqual(response.status_code, 400)
def test_search_with_plus_sign(self):
"""
Test that email address that contains '+' accepted by student support
"""
self.student.email = "student+student@example.com"
self.student.save() # pylint: disable=no-member
response = self._search(self.student.email)
self.assertEqual(response.status_code, 200)
results = json.loads(response.content)
self.assertEqual(len(results), 1)
retrieved_data = results[0]
self.assertEqual(retrieved_data["username"], self.STUDENT_USERNAME)
def test_results(self):
response = self._search(self.STUDENT_USERNAME)
self.assertEqual(response.status_code, 200)
......
......@@ -85,7 +85,7 @@ def search_certificates(request):
]
"""
user_filter = request.GET.get("user", "")
user_filter = urllib.unquote(urllib.quote_plus(request.GET.get("user", "")))
if not user_filter:
msg = _("user is not given.")
return HttpResponseBadRequest(msg)
......
......@@ -6,6 +6,7 @@ from django.utils.decorators import method_decorator
from edxmako.shortcuts import render_to_response
from support.decorators import require_support_permission
import urllib
class CertificatesSupportView(View):
......@@ -30,7 +31,7 @@ class CertificatesSupportView(View):
def get(self, request):
"""Render the certificates support view. """
context = {
"user_filter": request.GET.get("user", ""),
"user_filter": urllib.unquote(urllib.quote_plus(request.GET.get("user", ""))),
"course_filter": request.GET.get("course_id", "")
}
return render_to_response("support/certificates.html", context)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment