Ran pyupgrade on lms/djangoapps

Ran pyupgrade on lms/djangoapps/instructor_analytics
Ran pyugprade on lms/djangoapps/instructor_task
Ran pyupgrade on lms/djangoapps/learner_dashboard
This commit is contained in:
usamasadiq
2021-02-16 12:55:05 +05:00
parent ba16e05899
commit 3f1df8eb2a
39 changed files with 518 additions and 592 deletions

View File

@@ -4,22 +4,24 @@ Tests for instructor.basic
"""
import ddt
import datetime # lint-amnesty, pylint: disable=unused-import, wrong-import-order
import json # lint-amnesty, pylint: disable=wrong-import-order
import json
from unittest.mock import MagicMock, Mock, patch
import ddt
import pytz # lint-amnesty, pylint: disable=unused-import
from django.db.models import Q # lint-amnesty, pylint: disable=unused-import
from django.urls import reverse # lint-amnesty, pylint: disable=unused-import
from edx_proctoring.api import create_exam
from edx_proctoring.models import ProctoredExamStudentAttempt
from mock import MagicMock, Mock, patch
from opaque_keys.edx.locator import UsageKey
from six import text_type # lint-amnesty, pylint: disable=unused-import
from six.moves import range, zip
from common.djangoapps.course_modes.models import CourseMode # lint-amnesty, pylint: disable=unused-import
from common.djangoapps.course_modes.tests.factories import CourseModeFactory # lint-amnesty, pylint: disable=unused-import
from common.djangoapps.course_modes.tests.factories import \
CourseModeFactory # lint-amnesty, pylint: disable=unused-import
from common.djangoapps.student.models import CourseEnrollment, CourseEnrollmentAllowed
from common.djangoapps.student.roles import CourseSalesAdminRole # lint-amnesty, pylint: disable=unused-import
from common.djangoapps.student.tests.factories import UserFactory
from lms.djangoapps.courseware.tests.factories import InstructorFactory
from lms.djangoapps.instructor_analytics.basic import ( # lint-amnesty, pylint: disable=unused-import
AVAILABLE_FEATURES,
@@ -32,12 +34,9 @@ from lms.djangoapps.instructor_analytics.basic import ( # lint-amnesty, pylint:
get_proctored_exam_results,
get_response_state,
list_may_enroll,
list_problem_responses,
list_problem_responses
)
from openedx.core.djangoapps.course_groups.tests.helpers import CohortFactory
from common.djangoapps.student.models import CourseEnrollment, CourseEnrollmentAllowed
from common.djangoapps.student.roles import CourseSalesAdminRole # lint-amnesty, pylint: disable=unused-import
from common.djangoapps.student.tests.factories import UserFactory
from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase
from xmodule.modulestore.tests.factories import CourseFactory
@@ -47,7 +46,7 @@ class TestAnalyticsBasic(ModuleStoreTestCase):
""" Test basic analytics functions. """
def setUp(self):
super(TestAnalyticsBasic, self).setUp() # lint-amnesty, pylint: disable=super-with-arguments
super().setUp()
self.course_key = self.store.make_course_key('robot', 'course', 'id')
self.users = tuple(UserFactory() for _ in range(30))
self.ces = tuple(CourseEnrollment.enroll(user, self.course_key)
@@ -55,8 +54,8 @@ class TestAnalyticsBasic(ModuleStoreTestCase):
self.instructor = InstructorFactory(course_key=self.course_key)
for user in self.users:
user.profile.meta = json.dumps({
"position": u"edX expert {}".format(user.id),
"company": u"Open edX Inc {}".format(user.id),
"position": f"edX expert {user.id}",
"company": f"Open edX Inc {user.id}",
})
user.profile.save()
self.students_who_may_enroll = list(self.users) + [UserFactory() for _ in range(5)]
@@ -66,8 +65,8 @@ class TestAnalyticsBasic(ModuleStoreTestCase):
)
@ddt.data(
(u'あなた', u'スの中'),
(u"ГЂіи lіиэ ъэтшээи", u"Ђэаvэи аиↁ Ђэѓэ")
('あなた', 'スの中'),
("ГЂіи lіиэ ъэтшээи", "Ђэаvэи аиↁ Ђэѓэ")
)
@ddt.unpack
def test_get_response_state_with_ora(self, files_descriptions, saved_response):
@@ -92,13 +91,13 @@ class TestAnalyticsBasic(ModuleStoreTestCase):
relevant info (student.username and state).
"""
result = Mock(spec=['student', 'state'])
result.student.username.return_value = u'user{}'.format(result_id)
result.state.return_value = u'state{}'.format(result_id)
result.student.username.return_value = f'user{result_id}'
result.state.return_value = f'state{result_id}'
return result
# Ensure that UsageKey.from_string returns a problem key that list_problem_responses can work with
# (even when called with a dummy location):
mock_problem_key = Mock(return_value=u'')
mock_problem_key = Mock(return_value='')
mock_problem_key.course_key = self.course_key
with patch.object(UsageKey, 'from_string') as patched_from_string:
patched_from_string.return_value = mock_problem_key
@@ -135,8 +134,8 @@ class TestAnalyticsBasic(ModuleStoreTestCase):
def test_enrolled_students_features_keys(self):
query_features = ('username', 'name', 'email', 'city', 'country',)
for user in self.users:
user.profile.city = u"Mos Eisley {}".format(user.id)
user.profile.country = u"Tatooine {}".format(user.id)
user.profile.city = f"Mos Eisley {user.id}"
user.profile.country = f"Tatooine {user.id}"
user.profile.save()
for feature in query_features:
assert feature in AVAILABLE_FEATURES
@@ -173,8 +172,8 @@ class TestAnalyticsBasic(ModuleStoreTestCase):
assert len(userreports) == len(self.users)
for userreport in userreports:
assert set(userreport.keys()) == set(query_features)
assert userreport['meta.position'] in [u'edX expert {}'.format(user.id) for user in self.users]
assert userreport['meta.company'] in [u'Open edX Inc {}'.format(user.id) for user in self.users]
assert userreport['meta.position'] in [f"edX expert {user.id}" for user in self.users]
assert userreport['meta.company'] in [f"Open edX Inc {user.id}" for user in self.users]
def test_enrolled_students_enrollment_verification(self):
"""