Commit 2b29ad20 by Pan Luo

Fix failed test_course_about_in_cart

This test failed since d240785b on devstack.
The self.request_factory.get() just return a request object, which is
being passed to views.course_about() directly without being processed by
edxmako.middleware. The REQUEST_CONTEXT.request in
https://github.com/edx/edx-platform/blob/d240785b17bdcaeb11e4ef24ee4a3697da26c9b4/common/djangoapps/edxmako/middleware.py#L39
is None, instead of request object, which contains the LANGUAGE_CODE and
other stuff used by the view.

Also cleaned up the use of MakoMiddleware. Using the method in
edxmako.tests module.
parent cd60dd56
...@@ -31,7 +31,6 @@ from certificates.tests.factories import GeneratedCertificateFactory ...@@ -31,7 +31,6 @@ from certificates.tests.factories import GeneratedCertificateFactory
from course_modes.models import CourseMode from course_modes.models import CourseMode
from courseware.testutils import RenderXBlockTestMixin from courseware.testutils import RenderXBlockTestMixin
from courseware.tests.factories import StudentModuleFactory from courseware.tests.factories import StudentModuleFactory
from edxmako.middleware import MakoMiddleware
from edxmako.tests import mako_middleware_process_request from edxmako.tests import mako_middleware_process_request
from student.models import CourseEnrollment from student.models import CourseEnrollment
from student.tests.factories import AdminFactory, UserFactory, CourseEnrollmentFactory from student.tests.factories import AdminFactory, UserFactory, CourseEnrollmentFactory
...@@ -201,6 +200,7 @@ class ViewsTestCase(ModuleStoreTestCase): ...@@ -201,6 +200,7 @@ class ViewsTestCase(ModuleStoreTestCase):
course = CourseFactory.create(org="new", number="unenrolled", display_name="course") course = CourseFactory.create(org="new", number="unenrolled", display_name="course")
request = self.request_factory.get(reverse('about_course', args=[course.id.to_deprecated_string()])) request = self.request_factory.get(reverse('about_course', args=[course.id.to_deprecated_string()]))
request.user = AnonymousUser() request.user = AnonymousUser()
mako_middleware_process_request(request)
response = views.course_about(request, course.id.to_deprecated_string()) response = views.course_about(request, course.id.to_deprecated_string())
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
self.assertNotIn(in_cart_span, response.content) self.assertNotIn(in_cart_span, response.content)
...@@ -343,7 +343,7 @@ class ViewsTestCase(ModuleStoreTestCase): ...@@ -343,7 +343,7 @@ class ViewsTestCase(ModuleStoreTestCase):
request.user = self.user request.user = self.user
# TODO: Remove the dependency on MakoMiddleware (by making the views explicitly supply a RequestContext) # TODO: Remove the dependency on MakoMiddleware (by making the views explicitly supply a RequestContext)
MakoMiddleware().process_request(request) mako_middleware_process_request(request)
result = views.course_about(request, course_id) result = views.course_about(request, course_id)
if expected_end_text is not None: if expected_end_text is not None:
...@@ -748,8 +748,7 @@ class ProgressPageTests(ModuleStoreTestCase): ...@@ -748,8 +748,7 @@ class ProgressPageTests(ModuleStoreTestCase):
self.request = self.request_factory.get("foo") self.request = self.request_factory.get("foo")
self.request.user = self.user self.request.user = self.user
MakoMiddleware().process_request(self.request) mako_middleware_process_request(self.request)
course = CourseFactory.create( course = CourseFactory.create(
start=datetime(2013, 9, 16, 7, 17, 28), start=datetime(2013, 9, 16, 7, 17, 28),
grade_cutoffs={u'çü†øƒƒ': 0.75, 'Pass': 0.5}, grade_cutoffs={u'çü†øƒƒ': 0.75, 'Pass': 0.5},
......
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