refactor: Move BetaTesterFactory helper to common/

This commit is contained in:
stvn
2021-04-13 19:35:02 -07:00
parent 22fb1ec124
commit ffcfc05a61
12 changed files with 25 additions and 29 deletions

View File

@@ -26,6 +26,7 @@ from common.djangoapps.student.models import (
UserStanding
)
from common.djangoapps.student.roles import GlobalStaff
from common.djangoapps.student.roles import CourseBetaTesterRole
from common.djangoapps.student.roles import CourseInstructorRole
from common.djangoapps.student.roles import CourseStaffRole
@@ -232,6 +233,20 @@ class AccountRecoveryFactory(DjangoModelFactory): # lint-amnesty, pylint: disab
# pylint: disable=unused-argument
class BetaTesterFactory(UserFactory):
"""
Given a course Location, returns a User object with beta-tester
permissions for `course`.
"""
last_name = 'Beta-Tester'
@factory.post_generation
def course_key(self, _create, extracted, **kwargs):
if extracted is None:
raise ValueError('Must specify a CourseKey for a beta-tester user')
CourseBetaTesterRole(extracted).add_users(self)
class GlobalStaffFactory(UserFactory):
"""
Returns a User object with global staff access

View File

@@ -9,7 +9,7 @@ from unittest.mock import patch
import ddt
from django.utils.timezone import now
from lms.djangoapps.courseware.tests.factories import BetaTesterFactory
from common.djangoapps.student.tests.factories import BetaTesterFactory
from ..start_date import DEFAULT_START_DATE, StartDateTransformer
from .helpers import BlockParentsMapTestCase, update_block

View File

@@ -17,7 +17,6 @@ from lms.djangoapps.courseware.models import (
XModuleUserStateSummaryField
)
from common.djangoapps.student.roles import (
CourseBetaTesterRole,
OrgInstructorRole,
OrgStaffRole
)
@@ -40,20 +39,6 @@ class UserProfileFactory(StudentUserProfileFactory):
# course_key(self, create, extracted, **kwargs)
# pylint: disable=unused-argument
class BetaTesterFactory(UserFactory):
"""
Given a course Location, returns a User object with beta-tester
permissions for `course`.
"""
last_name = "Beta-Tester"
@factory.post_generation
def course_key(self, create, extracted, **kwargs):
if extracted is None:
raise ValueError("Must specify a CourseKey for a beta-tester user")
CourseBetaTesterRole(extracted).add_users(self)
class OrgStaffFactory(UserFactory):
"""
Given a course Location, returns a User object with org-staff

View File

@@ -22,9 +22,6 @@ from opaque_keys.edx.locator import CourseLocator
import lms.djangoapps.courseware.access as access
import lms.djangoapps.courseware.access_response as access_response
from lms.djangoapps.courseware.masquerade import CourseMasquerade
from lms.djangoapps.courseware.tests.factories import (
BetaTesterFactory,
)
from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase, masquerade_as_group_member
from lms.djangoapps.ccx.models import CustomCourseForEdX
from openedx.core.djangoapps.content.course_overviews.models import CourseOverview
@@ -38,6 +35,7 @@ from common.djangoapps.student.tests.factories import (
CourseEnrollmentAllowedFactory,
CourseEnrollmentFactory
)
from common.djangoapps.student.tests.factories import BetaTesterFactory
from common.djangoapps.student.tests.factories import GlobalStaffFactory
from common.djangoapps.student.tests.factories import InstructorFactory
from common.djangoapps.student.tests.factories import StaffFactory

View File

@@ -6,8 +6,8 @@ from unittest.mock import patch
import pytz
from django.test.utils import override_settings
from common.djangoapps.student.tests.factories import BetaTesterFactory
from lms.djangoapps.courseware.access import has_access
from lms.djangoapps.courseware.tests.factories import BetaTesterFactory
from lms.djangoapps.ccx.tests.test_overrides import inject_field_overrides
from lms.djangoapps.courseware.field_overrides import OverrideFieldData, OverrideModulestoreFieldData
from lms.djangoapps.discussion.django_comment_client.utils import get_accessible_discussion_xblocks

View File

@@ -9,12 +9,12 @@ from unittest.mock import patch
import pytz
from django.urls import reverse
from common.djangoapps.student.tests.factories import BetaTesterFactory
from common.djangoapps.student.tests.factories import GlobalStaffFactory
from common.djangoapps.student.tests.factories import InstructorFactory
from common.djangoapps.student.tests.factories import StaffFactory
from lms.djangoapps.courseware.access import has_access
from lms.djangoapps.courseware.tests.factories import (
BetaTesterFactory,
OrgInstructorFactory,
OrgStaffFactory,
)

View File

@@ -17,11 +17,11 @@ from pytz import UTC
from rest_framework.exceptions import PermissionDenied
from six.moves.urllib.parse import parse_qs, urlencode, urlparse, urlunparse
from common.djangoapps.student.tests.factories import BetaTesterFactory
from common.djangoapps.student.tests.factories import CourseEnrollmentFactory, UserFactory
from common.djangoapps.student.tests.factories import StaffFactory
from common.djangoapps.util.testing import UrlResetMixin
from common.test.utils import MockSignalHandlerMixin, disable_signal
from lms.djangoapps.courseware.tests.factories import BetaTesterFactory
from lms.djangoapps.discussion.django_comment_client.tests.utils import ForumsEnableMixin
from lms.djangoapps.discussion.rest_api import api
from lms.djangoapps.discussion.rest_api.api import (

View File

@@ -52,6 +52,7 @@ from common.djangoapps.student.roles import (
CourseFinanceAdminRole,
CourseInstructorRole,
)
from common.djangoapps.student.tests.factories import BetaTesterFactory
from common.djangoapps.student.tests.factories import CourseEnrollmentFactory
from common.djangoapps.student.tests.factories import GlobalStaffFactory
from common.djangoapps.student.tests.factories import InstructorFactory
@@ -64,9 +65,6 @@ from lms.djangoapps.certificates.tests.factories import (
GeneratedCertificateFactory
)
from lms.djangoapps.courseware.models import StudentModule
from lms.djangoapps.courseware.tests.factories import (
BetaTesterFactory,
)
from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase
from lms.djangoapps.instructor.tests.utils import FakeContentTask, FakeEmail, FakeEmailInfo
from lms.djangoapps.instructor.views.api import (

View File

@@ -16,11 +16,11 @@ from mock import patch
from opaque_keys.edx.keys import CourseKey
from opaque_keys.edx.locator import LibraryLocator
from edx_toggles.toggles.testutils import override_waffle_flag
from lms.djangoapps.courseware.tests.factories import BetaTesterFactory
from openedx.core.djangolib.testing.utils import CacheIsolationTestCase
from openedx.features.course_experience import COURSE_ENABLE_UNENROLLED_ACCESS_FLAG
from common.djangoapps.student.auth import user_has_role
from common.djangoapps.student.roles import CourseBetaTesterRole
from common.djangoapps.student.tests.factories import BetaTesterFactory
from ...data import (
ContentErrorData,

View File

@@ -16,12 +16,12 @@ from pyquery import PyQuery as pq
from lms.djangoapps.course_api.blocks.api import get_blocks
from common.djangoapps.course_modes.tests.factories import CourseModeFactory
from common.djangoapps.student.tests.factories import BetaTesterFactory
from common.djangoapps.student.tests.factories import GlobalStaffFactory
from common.djangoapps.student.tests.factories import InstructorFactory
from common.djangoapps.student.tests.factories import StaffFactory
from lms.djangoapps.courseware.module_render import load_single_xblock
from lms.djangoapps.courseware.tests.factories import (
BetaTesterFactory,
OrgInstructorFactory,
OrgStaffFactory,
)

View File

@@ -13,12 +13,12 @@ from django.utils.timezone import now
from common.djangoapps.course_modes.models import CourseMode
from common.djangoapps.student.models import CourseEnrollment, FBEEnrollmentExclusion
from common.djangoapps.student.roles import CourseInstructorRole
from common.djangoapps.student.tests.factories import BetaTesterFactory
from common.djangoapps.student.tests.factories import TEST_PASSWORD, CourseEnrollmentFactory, UserFactory
from common.djangoapps.student.tests.factories import GlobalStaffFactory
from common.djangoapps.student.tests.factories import InstructorFactory
from common.djangoapps.student.tests.factories import StaffFactory
from lms.djangoapps.courseware.tests.factories import (
BetaTesterFactory,
OrgInstructorFactory,
OrgStaffFactory,
)

View File

@@ -21,6 +21,7 @@ from waffle.testutils import override_flag
from common.djangoapps.course_modes.models import CourseMode
from common.djangoapps.course_modes.tests.factories import CourseModeFactory
from common.djangoapps.student.tests.factories import BetaTesterFactory
from common.djangoapps.student.tests.factories import GlobalStaffFactory
from common.djangoapps.student.tests.factories import InstructorFactory
from common.djangoapps.student.tests.factories import StaffFactory
@@ -30,7 +31,6 @@ from lms.djangoapps.commerce.models import CommerceConfiguration
from lms.djangoapps.commerce.utils import EcommerceService
from lms.djangoapps.course_goals.api import add_course_goal, remove_course_goal
from lms.djangoapps.courseware.tests.factories import (
BetaTesterFactory,
OrgInstructorFactory,
OrgStaffFactory,
)