From 4a20370f370d4ff71cca86f526d36d6d7aee5367 Mon Sep 17 00:00:00 2001 From: Nimisha Asthagiri Date: Tue, 25 Oct 2016 17:57:47 -0400 Subject: [PATCH] Update CourseGradeFactory.create to be read_only by default TNL-5835 --- .../tests/test_field_override_performance.py | 54 +++++++++---------- lms/djangoapps/courseware/tests/test_views.py | 6 +-- lms/djangoapps/courseware/views/views.py | 2 +- lms/djangoapps/grades/new/course_grade.py | 2 +- lms/djangoapps/grades/tests/test_new.py | 2 +- .../tests/test_tasks_helper.py | 2 +- 6 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lms/djangoapps/ccx/tests/test_field_override_performance.py b/lms/djangoapps/ccx/tests/test_field_override_performance.py index faf2bfa01d..6bfff67baf 100644 --- a/lms/djangoapps/ccx/tests/test_field_override_performance.py +++ b/lms/djangoapps/ccx/tests/test_field_override_performance.py @@ -229,18 +229,18 @@ class TestFieldOverrideMongoPerformance(FieldOverridePerformanceTestCase): # # of sql queries to default, # # of mongo queries, # ) - ('no_overrides', 1, True, False): (22, 6), - ('no_overrides', 2, True, False): (22, 6), - ('no_overrides', 3, True, False): (22, 6), - ('ccx', 1, True, False): (22, 6), - ('ccx', 2, True, False): (22, 6), - ('ccx', 3, True, False): (22, 6), - ('no_overrides', 1, False, False): (22, 6), - ('no_overrides', 2, False, False): (22, 6), - ('no_overrides', 3, False, False): (22, 6), - ('ccx', 1, False, False): (22, 6), - ('ccx', 2, False, False): (22, 6), - ('ccx', 3, False, False): (22, 6), + ('no_overrides', 1, True, False): (17, 6), + ('no_overrides', 2, True, False): (17, 6), + ('no_overrides', 3, True, False): (17, 6), + ('ccx', 1, True, False): (17, 6), + ('ccx', 2, True, False): (17, 6), + ('ccx', 3, True, False): (17, 6), + ('no_overrides', 1, False, False): (17, 6), + ('no_overrides', 2, False, False): (17, 6), + ('no_overrides', 3, False, False): (17, 6), + ('ccx', 1, False, False): (17, 6), + ('ccx', 2, False, False): (17, 6), + ('ccx', 3, False, False): (17, 6), } @@ -252,19 +252,19 @@ class TestFieldOverrideSplitPerformance(FieldOverridePerformanceTestCase): __test__ = True TEST_DATA = { - ('no_overrides', 1, True, False): (22, 3), - ('no_overrides', 2, True, False): (22, 3), - ('no_overrides', 3, True, False): (22, 3), - ('ccx', 1, True, False): (22, 3), - ('ccx', 2, True, False): (22, 3), - ('ccx', 3, True, False): (22, 3), - ('ccx', 1, True, True): (23, 3), - ('ccx', 2, True, True): (23, 3), - ('ccx', 3, True, True): (23, 3), - ('no_overrides', 1, False, False): (22, 3), - ('no_overrides', 2, False, False): (22, 3), - ('no_overrides', 3, False, False): (22, 3), - ('ccx', 1, False, False): (22, 3), - ('ccx', 2, False, False): (22, 3), - ('ccx', 3, False, False): (22, 3), + ('no_overrides', 1, True, False): (17, 3), + ('no_overrides', 2, True, False): (17, 3), + ('no_overrides', 3, True, False): (17, 3), + ('ccx', 1, True, False): (17, 3), + ('ccx', 2, True, False): (17, 3), + ('ccx', 3, True, False): (17, 3), + ('ccx', 1, True, True): (18, 3), + ('ccx', 2, True, True): (18, 3), + ('ccx', 3, True, True): (18, 3), + ('no_overrides', 1, False, False): (17, 3), + ('no_overrides', 2, False, False): (17, 3), + ('no_overrides', 3, False, False): (17, 3), + ('ccx', 1, False, False): (17, 3), + ('ccx', 2, False, False): (17, 3), + ('ccx', 3, False, False): (17, 3), } diff --git a/lms/djangoapps/courseware/tests/test_views.py b/lms/djangoapps/courseware/tests/test_views.py index b25c9254de..b37f573417 100644 --- a/lms/djangoapps/courseware/tests/test_views.py +++ b/lms/djangoapps/courseware/tests/test_views.py @@ -1345,17 +1345,17 @@ class ProgressPageTests(ModuleStoreTestCase): """Test that query counts remain the same for self-paced and instructor-paced courses.""" SelfPacedConfiguration(enabled=self_paced_enabled).save() self.setup_course(self_paced=self_paced) - with self.assertNumQueries(39), check_mongo_calls(4): + with self.assertNumQueries(34), check_mongo_calls(4): self._get_progress_page() def test_progress_queries(self): self.setup_course() - with self.assertNumQueries(39), check_mongo_calls(4): + with self.assertNumQueries(34), check_mongo_calls(4): self._get_progress_page() # subsequent accesses to the progress page require fewer queries. for _ in range(2): - with self.assertNumQueries(22), check_mongo_calls(4): + with self.assertNumQueries(20), check_mongo_calls(4): self._get_progress_page() @patch( diff --git a/lms/djangoapps/courseware/views/views.py b/lms/djangoapps/courseware/views/views.py index 18fde1771b..1b60b16ec2 100644 --- a/lms/djangoapps/courseware/views/views.py +++ b/lms/djangoapps/courseware/views/views.py @@ -719,7 +719,7 @@ def _progress(request, course_key, student_id): # additional DB lookup (this kills the Progress page in particular). student = User.objects.prefetch_related("groups").get(id=student.id) - course_grade = CourseGradeFactory(student).create(course, read_only=False) + course_grade = CourseGradeFactory(student).create(course) if not course_grade.has_access_to_course: # This means the student didn't have access to the course (which the instructor requested) raise Http404 diff --git a/lms/djangoapps/grades/new/course_grade.py b/lms/djangoapps/grades/new/course_grade.py index 5af49dec85..04c0036533 100644 --- a/lms/djangoapps/grades/new/course_grade.py +++ b/lms/djangoapps/grades/new/course_grade.py @@ -248,7 +248,7 @@ class CourseGradeFactory(object): def __init__(self, student): self.student = student - def create(self, course, read_only=False): + def create(self, course, read_only=True): """ Returns the CourseGrade object for the given student and course. diff --git a/lms/djangoapps/grades/tests/test_new.py b/lms/djangoapps/grades/tests/test_new.py index 133302ffc2..9dc425bc93 100644 --- a/lms/djangoapps/grades/tests/test_new.py +++ b/lms/djangoapps/grades/tests/test_new.py @@ -546,7 +546,7 @@ class TestCourseGradeLogging(SharedModuleStoreTestCase): Creates a course grade and asserts that the associated logging matches the expected totals passed in to the function. """ - factory.create(self.course) + factory.create(self.course, read_only=False) log_statement = u''.join(( u"compute_and_update, read_only: {0}, subsections read/created: {1}/{2}, blocks ", u"accessed: {3}, total graded subsections: {4}" diff --git a/lms/djangoapps/instructor_task/tests/test_tasks_helper.py b/lms/djangoapps/instructor_task/tests/test_tasks_helper.py index 19ebc28a6a..74459c1ce9 100644 --- a/lms/djangoapps/instructor_task/tests/test_tasks_helper.py +++ b/lms/djangoapps/instructor_task/tests/test_tasks_helper.py @@ -1674,7 +1674,7 @@ class TestCertificateGeneration(InstructorTaskModuleTestCase): 'failed': 3, 'skipped': 2 } - with self.assertNumQueries(191): + with self.assertNumQueries(158): self.assertCertificatesGenerated(task_input, expected_results) expected_results = {