INCR-224: run python-modernize and isort for openedx/features/course_duration/ (#20429)
This commit is contained in:
committed by
Jeremy Bowman
parent
f7ed283e56
commit
92e8615669
@@ -2,20 +2,21 @@
|
||||
A managment command that can be used to set up Schedules with various configurations for testing.
|
||||
"""
|
||||
|
||||
import datetime
|
||||
import pytz
|
||||
import factory
|
||||
from __future__ import absolute_import
|
||||
|
||||
from django.core.management.base import BaseCommand
|
||||
import datetime
|
||||
|
||||
import factory
|
||||
import pytz
|
||||
from django.contrib.sites.models import Site
|
||||
from django.core.management.base import BaseCommand
|
||||
|
||||
from course_modes.models import CourseMode
|
||||
from course_modes.tests.factories import CourseModeFactory
|
||||
from openedx.core.djangoapps.content.course_overviews.models import CourseOverview
|
||||
from openedx.core.djangoapps.schedules.tests.factories import (
|
||||
ScheduleFactory, ScheduleConfigFactory,
|
||||
)
|
||||
from xmodule.modulestore.tests.factories import CourseFactory, XMODULE_FACTORY_LOCK
|
||||
from openedx.core.djangoapps.schedules.tests.factories import ScheduleConfigFactory, ScheduleFactory
|
||||
from xmodule.modulestore.django import modulestore
|
||||
from xmodule.modulestore.tests.factories import XMODULE_FACTORY_LOCK, CourseFactory
|
||||
|
||||
|
||||
class CourseDurationLimitExpirySchedule(ScheduleFactory):
|
||||
|
||||
@@ -4,8 +4,11 @@
|
||||
Send out reminder emails for any students who will lose access to course content in 7 days.
|
||||
"""
|
||||
|
||||
from __future__ import absolute_import
|
||||
|
||||
from openedx.core.djangoapps.schedules.management.commands import SendEmailBaseCommand
|
||||
from openedx.features.course_duration_limits.tasks import CourseDurationLimitExpiryReminder
|
||||
|
||||
from ... import resolvers
|
||||
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.16 on 2018-11-08 19:43
|
||||
from __future__ import unicode_literals
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.16 on 2018-11-19 14:59
|
||||
from __future__ import unicode_literals
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.16 on 2018-11-28 19:07
|
||||
from __future__ import unicode_literals
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.16 on 2018-11-28 20:21
|
||||
from __future__ import unicode_literals
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.20 on 2019-03-06 15:46
|
||||
from __future__ import unicode_literals
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.20 on 2019-03-08 14:47
|
||||
from __future__ import unicode_literals
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.20 on 2019-03-11 19:19
|
||||
from __future__ import unicode_literals
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.20 on 2019-03-13 16:34
|
||||
from __future__ import unicode_literals
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
import openedx.core.djangoapps.config_model_utils.models
|
||||
|
||||
|
||||
|
||||
@@ -1,23 +1,26 @@
|
||||
"""Tests of openedx.features.course_duration_limits.access"""
|
||||
|
||||
from datetime import datetime, timedelta
|
||||
from __future__ import absolute_import
|
||||
|
||||
import itertools
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
import ddt
|
||||
from django.utils import timezone
|
||||
from pytz import UTC
|
||||
|
||||
from course_modes.models import CourseMode
|
||||
from course_modes.tests.factories import CourseModeFactory
|
||||
from django.utils import timezone
|
||||
from courseware.models import DynamicUpgradeDeadlineConfiguration
|
||||
from openedx.core.djangoapps.schedules.tests.factories import ScheduleFactory
|
||||
from openedx.core.djangolib.testing.utils import CacheIsolationTestCase
|
||||
from openedx.features.course_duration_limits.access import (
|
||||
generate_course_expired_message,
|
||||
get_user_course_expiration_date,
|
||||
get_user_course_expiration_date
|
||||
)
|
||||
from openedx.features.course_duration_limits.models import CourseDurationLimitConfig
|
||||
from pytz import UTC
|
||||
from student.tests.factories import CourseEnrollmentFactory
|
||||
from util.date_utils import strftime_localized
|
||||
import ddt
|
||||
|
||||
|
||||
@ddt.ddt
|
||||
|
||||
@@ -1,45 +1,48 @@
|
||||
"""
|
||||
Contains tests to verify correctness of course expiration functionality
|
||||
"""
|
||||
from __future__ import absolute_import
|
||||
|
||||
import json
|
||||
from datetime import timedelta
|
||||
|
||||
import ddt
|
||||
import mock
|
||||
import six
|
||||
from django.conf import settings
|
||||
from django.urls import reverse
|
||||
from django.utils.timezone import now
|
||||
import ddt
|
||||
import mock
|
||||
|
||||
from course_modes.models import CourseMode
|
||||
from lms.djangoapps.discussion.django_comment_client.tests.factories import RoleFactory
|
||||
from experiments.models import ExperimentData
|
||||
from lms.djangoapps.courseware.tests.factories import (
|
||||
InstructorFactory,
|
||||
StaffFactory,
|
||||
BetaTesterFactory,
|
||||
OrgStaffFactory,
|
||||
OrgInstructorFactory,
|
||||
GlobalStaffFactory,
|
||||
InstructorFactory,
|
||||
OrgInstructorFactory,
|
||||
OrgStaffFactory,
|
||||
StaffFactory
|
||||
)
|
||||
from lms.djangoapps.discussion.django_comment_client.tests.factories import RoleFactory
|
||||
from openedx.core.djangoapps.content.course_overviews.models import CourseOverview
|
||||
from openedx.core.djangoapps.django_comment_common.models import (
|
||||
FORUM_ROLE_ADMINISTRATOR,
|
||||
FORUM_ROLE_MODERATOR,
|
||||
FORUM_ROLE_COMMUNITY_TA,
|
||||
FORUM_ROLE_GROUP_MODERATOR,
|
||||
FORUM_ROLE_COMMUNITY_TA
|
||||
FORUM_ROLE_MODERATOR
|
||||
)
|
||||
from openedx.core.djangoapps.schedules.tests.factories import ScheduleFactory
|
||||
from openedx.features.content_type_gating.helpers import CONTENT_GATING_PARTITION_ID, CONTENT_TYPE_GATE_GROUP_IDS
|
||||
from openedx.features.course_duration_limits.access import get_user_course_expiration_date, MIN_DURATION, MAX_DURATION
|
||||
from openedx.features.course_duration_limits.config import EXPERIMENT_ID, EXPERIMENT_DATA_HOLDBACK_KEY
|
||||
from openedx.features.course_experience.tests.views.helpers import add_course_mode
|
||||
from openedx.features.course_duration_limits.access import MAX_DURATION, MIN_DURATION, get_user_course_expiration_date
|
||||
from openedx.features.course_duration_limits.config import EXPERIMENT_DATA_HOLDBACK_KEY, EXPERIMENT_ID
|
||||
from openedx.features.course_duration_limits.models import CourseDurationLimitConfig
|
||||
from openedx.features.course_experience.tests.views.helpers import add_course_mode
|
||||
from student.models import CourseEnrollment
|
||||
from student.roles import CourseInstructorRole
|
||||
from student.tests.factories import UserFactory, CourseEnrollmentFactory, TEST_PASSWORD
|
||||
from xmodule.partitions.partitions import ENROLLMENT_TRACK_PARTITION_ID
|
||||
from student.tests.factories import TEST_PASSWORD, CourseEnrollmentFactory, UserFactory
|
||||
from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase
|
||||
from xmodule.modulestore.tests.factories import CourseFactory
|
||||
from xmodule.partitions.partitions import ENROLLMENT_TRACK_PARTITION_ID
|
||||
|
||||
|
||||
@ddt.ddt
|
||||
@@ -210,7 +213,7 @@ class CourseExpirationTestCase(ModuleStoreTestCase):
|
||||
|
||||
self.update_masquerade(**masquerade_config)
|
||||
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[unicode(self.course.id)])
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[six.text_type(self.course.id)])
|
||||
response = self.client.get(course_home_url, follow=True)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertItemsEqual(response.redirect_chain, [])
|
||||
@@ -227,7 +230,7 @@ class CourseExpirationTestCase(ModuleStoreTestCase):
|
||||
masquerade_url = reverse(
|
||||
'masquerade_update',
|
||||
kwargs={
|
||||
'course_key_string': unicode(self.course.id),
|
||||
'course_key_string': six.text_type(self.course.id),
|
||||
}
|
||||
)
|
||||
response = self.client.post(
|
||||
@@ -275,7 +278,7 @@ class CourseExpirationTestCase(ModuleStoreTestCase):
|
||||
|
||||
self.update_masquerade(username='audit')
|
||||
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[unicode(self.course.id)])
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[six.text_type(self.course.id)])
|
||||
response = self.client.get(course_home_url, follow=True)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertItemsEqual(response.redirect_chain, [])
|
||||
@@ -311,7 +314,7 @@ class CourseExpirationTestCase(ModuleStoreTestCase):
|
||||
|
||||
self.update_masquerade(username='audit')
|
||||
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[unicode(self.course.id)])
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[six.text_type(self.course.id)])
|
||||
response = self.client.get(course_home_url, follow=True)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertItemsEqual(response.redirect_chain, [])
|
||||
@@ -362,7 +365,7 @@ class CourseExpirationTestCase(ModuleStoreTestCase):
|
||||
|
||||
self.update_masquerade(username=expired_staff.username)
|
||||
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[unicode(self.course.id)])
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[six.text_type(self.course.id)])
|
||||
response = self.client.get(course_home_url, follow=True)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertItemsEqual(response.redirect_chain, [])
|
||||
@@ -411,7 +414,7 @@ class CourseExpirationTestCase(ModuleStoreTestCase):
|
||||
|
||||
self.update_masquerade(username=expired_staff.username)
|
||||
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[unicode(self.course.id)])
|
||||
course_home_url = reverse('openedx.course_experience.course_home', args=[six.text_type(self.course.id)])
|
||||
response = self.client.get(course_home_url, follow=True)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertItemsEqual(response.redirect_chain, [])
|
||||
|
||||
@@ -2,20 +2,22 @@
|
||||
Tests of CourseDurationLimitConfig.
|
||||
"""
|
||||
|
||||
from datetime import timedelta, datetime
|
||||
from __future__ import absolute_import
|
||||
|
||||
import itertools
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
import ddt
|
||||
from django.utils import timezone
|
||||
from mock import Mock
|
||||
import pytz
|
||||
|
||||
from django.utils import timezone
|
||||
from edx_django_utils.cache import RequestCache
|
||||
from course_modes.tests.factories import CourseModeFactory
|
||||
from mock import Mock
|
||||
from opaque_keys.edx.locator import CourseLocator
|
||||
|
||||
from course_modes.tests.factories import CourseModeFactory
|
||||
from openedx.core.djangoapps.config_model_utils.models import Provenance
|
||||
from openedx.core.djangoapps.site_configuration.tests.factories import SiteConfigurationFactory
|
||||
from openedx.core.djangoapps.content.course_overviews.tests.factories import CourseOverviewFactory
|
||||
from openedx.core.djangoapps.site_configuration.tests.factories import SiteConfigurationFactory
|
||||
from openedx.core.djangoapps.waffle_utils.testutils import override_waffle_flag
|
||||
from openedx.core.djangolib.testing.utils import CacheIsolationTestCase
|
||||
from openedx.features.course_duration_limits.models import CourseDurationLimitConfig
|
||||
|
||||
Reference in New Issue
Block a user