Merge pull request #18731 from edx/jmbowman/TE-2524
TE-2524 Remove remaining nose.plugins usage
This commit is contained in:
@@ -6,7 +6,6 @@ import unittest
|
||||
from django.conf import settings
|
||||
from django.core import mail
|
||||
from django.test.utils import override_settings
|
||||
from nose.plugins.attrib import attr
|
||||
from rest_framework.test import APITestCase
|
||||
from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase
|
||||
from xmodule.modulestore.tests.factories import CourseFactory
|
||||
@@ -18,7 +17,6 @@ from student.tests.factories import UserFactory
|
||||
from .test_views import EnrollmentTestMixin
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@override_settings(EDX_API_KEY="i am a key")
|
||||
@unittest.skipUnless(settings.ROOT_URLCONF == 'lms.urls', 'Test only valid in lms')
|
||||
@override_settings(ENROLLMENT_NOTIFICATION_EMAIL="some_admins@example.com")
|
||||
@@ -35,6 +33,7 @@ class EnrollmentEmailNotificationTest(EnrollmentTestMixin,
|
||||
|
||||
ENABLED_CACHES = ['default', 'mongo_metadata_inheritance', 'loc_cache']
|
||||
ENABLED_SIGNALS = ['course_published']
|
||||
shard = 3
|
||||
|
||||
def setUp(self):
|
||||
""" Create a course and user, then log in. Also creates a course mode."""
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
Single page performance tests for LMS.
|
||||
"""
|
||||
from bok_choy.web_app_test import with_cache
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, CourseUpdateDesc, XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
@@ -15,13 +14,13 @@ from common.test.acceptance.pages.lms.progress import ProgressPage
|
||||
from common.test.acceptance.tests.helpers import UniqueCourseTest, load_data_str
|
||||
|
||||
|
||||
@attr(har_mode='explicit')
|
||||
class LmsPerformanceTest(UniqueCourseTest):
|
||||
"""
|
||||
Base class to capture LMS performance with HTTP Archives.
|
||||
"""
|
||||
username = 'test_student'
|
||||
email = 'student101@example.com'
|
||||
har_mode = 'explicit'
|
||||
|
||||
def setUp(self):
|
||||
"""
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
Single page performance tests for Studio.
|
||||
"""
|
||||
from bok_choy.web_app_test import with_cache
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.studio.overview import CourseOutlinePage
|
||||
@@ -10,7 +9,6 @@ from common.test.acceptance.pages.studio.overview import CourseOutlinePage
|
||||
from ..tests.helpers import AcceptanceTest
|
||||
|
||||
|
||||
@attr(har_mode='explicit')
|
||||
class StudioPagePerformanceTest(AcceptanceTest):
|
||||
"""
|
||||
Base class to capture studio performance with HTTP Archives.
|
||||
@@ -21,6 +19,7 @@ class StudioPagePerformanceTest(AcceptanceTest):
|
||||
course_org = 'edX'
|
||||
course_num = 'Open_DemoX'
|
||||
course_run = 'edx_demo_course'
|
||||
har_mode = 'explicit'
|
||||
|
||||
def setUp(self):
|
||||
"""
|
||||
|
||||
@@ -5,8 +5,8 @@ End-to-end tests for the Account Settings page.
|
||||
from datetime import datetime
|
||||
from unittest import skip
|
||||
|
||||
import pytest
|
||||
from bok_choy.page_object import XSS_INJECTION
|
||||
from nose.plugins.attrib import attr
|
||||
from pytz import timezone, utc
|
||||
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage, FULL_NAME
|
||||
@@ -98,11 +98,12 @@ class AccountSettingsTestMixin(EventsTestMixin, AcceptanceTest):
|
||||
self.assert_no_matching_events_were_emitted({'event_type': self.USER_SETTINGS_CHANGED_EVENT_NAME})
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
class DashboardMenuTest(AccountSettingsTestMixin, AcceptanceTest):
|
||||
"""
|
||||
Tests that the dashboard menu works correctly with the account settings page.
|
||||
"""
|
||||
shard = 8
|
||||
|
||||
def test_link_on_dashboard_works(self):
|
||||
"""
|
||||
Scenario: Verify that the "Account" link works from the dashboard.
|
||||
@@ -121,12 +122,12 @@ class DashboardMenuTest(AccountSettingsTestMixin, AcceptanceTest):
|
||||
dashboard_page.click_account_settings_link()
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
class AccountSettingsPageTest(AccountSettingsTestMixin, AcceptanceTest):
|
||||
"""
|
||||
Tests that verify behaviour of the Account Settings page.
|
||||
"""
|
||||
SUCCESS_MESSAGE = 'Your changes have been saved.'
|
||||
shard = 8
|
||||
|
||||
def setUp(self):
|
||||
"""
|
||||
@@ -575,7 +576,7 @@ class AccountSettingsDeleteAccountTest(AccountSettingsTestMixin, AcceptanceTest)
|
||||
)
|
||||
|
||||
|
||||
@attr('a11y')
|
||||
@pytest.mark.a11y
|
||||
class AccountSettingsA11yTest(AccountSettingsTestMixin, AcceptanceTest):
|
||||
"""
|
||||
Class to test account settings accessibility.
|
||||
|
||||
@@ -5,8 +5,8 @@ End-to-end tests for the courseware unit bookmarks.
|
||||
import json
|
||||
from unittest import skip
|
||||
|
||||
import pytest
|
||||
import requests
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common import BASE_URL
|
||||
@@ -127,11 +127,11 @@ class BookmarksTestMixin(EventsTestMixin, UniqueCourseTest):
|
||||
self._bookmark_unit(xblocks[index].locator)
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
class BookmarksTest(BookmarksTestMixin):
|
||||
"""
|
||||
Tests to verify bookmarks functionality.
|
||||
"""
|
||||
shard = 8
|
||||
|
||||
def _breadcrumb(self, num_units, modified_name=None):
|
||||
"""
|
||||
@@ -586,7 +586,7 @@ class BookmarksTest(BookmarksTestMixin):
|
||||
)
|
||||
|
||||
|
||||
@attr('a11y')
|
||||
@pytest.mark.a11y
|
||||
class BookmarksA11yTests(BookmarksTestMixin):
|
||||
"""
|
||||
Tests for checking the a11y of the bookmarks page.
|
||||
|
||||
@@ -2,21 +2,19 @@
|
||||
"""
|
||||
End-to-end tests for the CCX dashboard.
|
||||
"""
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.lms.ccx_dashboard_page import CoachDashboardPage
|
||||
from common.test.acceptance.tests.helpers import EventsTestMixin, UniqueCourseTest
|
||||
|
||||
|
||||
@attr(shard=7)
|
||||
class CreateCCXCoachTest(EventsTestMixin, UniqueCourseTest):
|
||||
"""
|
||||
Test ccx end to end process.
|
||||
"""
|
||||
USERNAME = "coach_tester"
|
||||
EMAIL = "coach_tester@example.com"
|
||||
shard = 7
|
||||
|
||||
def setUp(self):
|
||||
super(CreateCCXCoachTest, self).setUp()
|
||||
|
||||
@@ -1,24 +1,18 @@
|
||||
"""
|
||||
Acceptance tests for the certificate web view feature.
|
||||
"""
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.certificates import CertificateConfigFixture
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, CourseUpdateDesc, XBlockFixtureDesc
|
||||
from common.test.acceptance.fixtures.course import CourseFixture
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.lms.certificate_page import CertificatePage
|
||||
from common.test.acceptance.pages.lms.course_home import CourseHomePage
|
||||
from common.test.acceptance.pages.lms.courseware import CoursewarePage
|
||||
from common.test.acceptance.pages.lms.progress import ProgressPage
|
||||
from common.test.acceptance.pages.lms.tab_nav import TabNavPage
|
||||
from common.test.acceptance.tests.helpers import EventsTestMixin, UniqueCourseTest, get_element_padding, load_data_str
|
||||
from common.test.acceptance.tests.helpers import EventsTestMixin, UniqueCourseTest
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
class CertificateWebViewTest(EventsTestMixin, UniqueCourseTest):
|
||||
"""
|
||||
Tests for verifying certificate web view features
|
||||
"""
|
||||
shard = 5
|
||||
|
||||
def setUp(self):
|
||||
super(CertificateWebViewTest, self).setUp()
|
||||
|
||||
@@ -6,7 +6,7 @@ from contextlib import contextmanager
|
||||
from datetime import datetime
|
||||
from unittest import skip
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
import pytest
|
||||
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.common.logout import LogoutPage
|
||||
@@ -182,11 +182,11 @@ class LearnerProfileTestMixin(EventsTestMixin):
|
||||
return username, user_id
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
class OwnLearnerProfilePageTest(LearnerProfileTestMixin, AcceptanceTest):
|
||||
"""
|
||||
Tests that verify a student's own profile page.
|
||||
"""
|
||||
shard = 4
|
||||
|
||||
def verify_profile_forced_private_message(self, username, birth_year, message=None):
|
||||
"""
|
||||
@@ -611,11 +611,12 @@ class OwnLearnerProfilePageTest(LearnerProfileTestMixin, AcceptanceTest):
|
||||
profile_page.upload_file(filename='image.jpg', wait_for_upload_button=False)
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
class DifferentUserLearnerProfilePageTest(LearnerProfileTestMixin, AcceptanceTest):
|
||||
"""
|
||||
Tests that verify viewing the profile page of a different user.
|
||||
"""
|
||||
shard = 4
|
||||
|
||||
def test_different_user_private_profile(self):
|
||||
"""
|
||||
Scenario: Verify that desired fields are shown when looking at a different user's private profile.
|
||||
@@ -678,7 +679,7 @@ class DifferentUserLearnerProfilePageTest(LearnerProfileTestMixin, AcceptanceTes
|
||||
badge.close_modal()
|
||||
|
||||
|
||||
@attr('a11y')
|
||||
@pytest.mark.a11y
|
||||
class LearnerProfileA11yTest(LearnerProfileTestMixin, AcceptanceTest):
|
||||
"""
|
||||
Class to test learner profile accessibility.
|
||||
|
||||
@@ -5,7 +5,6 @@ End-to-end tests for LibraryContent block in LMS
|
||||
import textwrap
|
||||
|
||||
import ddt
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from common.test.acceptance.fixtures.library import LibraryFixture
|
||||
@@ -23,7 +22,6 @@ SUBSECTION_NAME = 'Test Subsection'
|
||||
UNIT_NAME = 'Test Unit'
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
class LibraryContentTestBase(UniqueCourseTest):
|
||||
""" Base class for library content block tests """
|
||||
USERNAME = "STUDENT_TESTER"
|
||||
@@ -31,6 +29,7 @@ class LibraryContentTestBase(UniqueCourseTest):
|
||||
|
||||
STAFF_USERNAME = "STAFF_TESTER"
|
||||
STAFF_EMAIL = "staff101@example.com"
|
||||
shard = 10
|
||||
|
||||
def populate_library_fixture(self, library_fixture):
|
||||
"""
|
||||
@@ -147,11 +146,12 @@ class LibraryContentTestBase(UniqueCourseTest):
|
||||
|
||||
|
||||
@ddt.ddt
|
||||
@attr(shard=10)
|
||||
class LibraryContentTest(LibraryContentTestBase):
|
||||
"""
|
||||
Test courseware.
|
||||
"""
|
||||
shard = 10
|
||||
|
||||
def populate_library_fixture(self, library_fixture):
|
||||
"""
|
||||
Populates library fixture with XBlock Fixtures
|
||||
@@ -200,11 +200,12 @@ class LibraryContentTest(LibraryContentTestBase):
|
||||
|
||||
|
||||
@ddt.ddt
|
||||
@attr(shard=10)
|
||||
class StudioLibraryContainerCapaFilterTest(LibraryContentTestBase, TestWithSearchIndexMixin):
|
||||
"""
|
||||
Test Library Content block in LMS
|
||||
"""
|
||||
shard = 10
|
||||
|
||||
def setUp(self):
|
||||
""" SetUp method """
|
||||
self._create_search_index()
|
||||
|
||||
@@ -5,8 +5,6 @@ Test courseware search
|
||||
import json
|
||||
import uuid
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.common.logout import LogoutPage
|
||||
@@ -21,12 +19,11 @@ from common.test.acceptance.tests.helpers import remove_file
|
||||
from common.test.acceptance.tests.studio.base_studio_test import ContainerBase
|
||||
|
||||
|
||||
@attr(shard=1)
|
||||
class CoursewareSearchCohortTest(ContainerBase, CohortTestMixin):
|
||||
"""
|
||||
Test courseware search.
|
||||
"""
|
||||
|
||||
shard = 1
|
||||
TEST_INDEX_FILENAME = "test_root/index_file.dat"
|
||||
|
||||
def setUp(self, is_staff=True):
|
||||
|
||||
@@ -7,7 +7,8 @@ import json
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
import ddt
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
from ...fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from ...pages.common.auto_auth import AutoAuthPage
|
||||
@@ -19,7 +20,6 @@ from ...pages.lms.dashboard import DashboardPage
|
||||
from ...pages.lms.pay_and_verify import FakePaymentPage, FakeSoftwareSecureVerificationPage, PaymentAndVerificationFlow
|
||||
from ...pages.lms.problem import ProblemPage
|
||||
from ...pages.lms.progress import ProgressPage
|
||||
from ...pages.lms.staff_view import StaffCoursewarePage
|
||||
from ...pages.lms.track_selection import TrackSelectionPage
|
||||
from ...pages.studio.overview import CourseOutlinePage as StudioCourseOutlinePage
|
||||
from ..helpers import EventsTestMixin, UniqueCourseTest, auto_auth, create_multiple_choice_problem
|
||||
|
||||
@@ -3,8 +3,6 @@ Test courseware search
|
||||
"""
|
||||
import json
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.common.logout import LogoutPage
|
||||
@@ -17,7 +15,6 @@ from common.test.acceptance.pages.studio.utils import add_html_component, type_i
|
||||
from common.test.acceptance.tests.helpers import UniqueCourseTest, remove_file
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
class CoursewareSearchTest(UniqueCourseTest):
|
||||
"""
|
||||
Test courseware search.
|
||||
@@ -41,6 +38,7 @@ class CoursewareSearchTest(UniqueCourseTest):
|
||||
EDITED_SEARCH_STRING = "edited"
|
||||
|
||||
TEST_INDEX_FILENAME = "test_root/index_file.dat"
|
||||
shard = 5
|
||||
|
||||
def setUp(self):
|
||||
"""
|
||||
|
||||
@@ -4,7 +4,7 @@ End-to-end tests for the main LMS Dashboard (aka, Student Dashboard).
|
||||
"""
|
||||
import datetime
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
import pytest
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
@@ -141,9 +141,9 @@ class BaseLmsDashboardTestMultiple(UniqueCourseTest):
|
||||
self.dashboard_page.visit()
|
||||
|
||||
|
||||
@attr(shard=9)
|
||||
class LmsDashboardPageTest(BaseLmsDashboardTest):
|
||||
""" Test suite for the LMS Student Dashboard page """
|
||||
shard = 9
|
||||
|
||||
def setUp(self):
|
||||
super(LmsDashboardPageTest, self).setUp()
|
||||
@@ -399,7 +399,7 @@ class LmsDashboardCourseUnEnrollDialogMessageTest(BaseLmsDashboardTestMultiple):
|
||||
self.assertEqual(dialog_message['refund-info'][0], expected_refund_message)
|
||||
|
||||
|
||||
@attr('a11y')
|
||||
@pytest.mark.a11y
|
||||
class LmsDashboardA11yTest(BaseLmsDashboardTestMultiple):
|
||||
"""
|
||||
Class to test lms student dashboard accessibility.
|
||||
|
||||
@@ -6,8 +6,6 @@ from datetime import datetime
|
||||
from unittest import skip
|
||||
from uuid import uuid4
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from common.test.acceptance.fixtures.edxnotes import EdxNotesFixture, Note, Range
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
@@ -15,6 +13,7 @@ from common.test.acceptance.pages.lms.course_home import CourseHomePage
|
||||
from common.test.acceptance.pages.lms.courseware import CoursewarePage
|
||||
from common.test.acceptance.pages.lms.edxnotes import EdxNotesPage, EdxNotesPageNoContent, EdxNotesUnitPage
|
||||
from common.test.acceptance.tests.helpers import EventsTestMixin, UniqueCourseTest
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
|
||||
class EdxNotesTestMixin(UniqueCourseTest):
|
||||
|
||||
@@ -5,7 +5,6 @@ End-to-end tests for the LMS Instructor Dashboard.
|
||||
|
||||
import ddt
|
||||
from bok_choy.promise import EmptyPromise
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.certificates import CertificateConfigFixture
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
@@ -31,6 +30,7 @@ from common.test.acceptance.tests.helpers import (
|
||||
disable_animations,
|
||||
get_modal_alert
|
||||
)
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
|
||||
class BaseInstructorDashboardTest(EventsTestMixin, UniqueCourseTest):
|
||||
|
||||
@@ -6,14 +6,13 @@ See also old lettuce tests in lms/djangoapps/courseware/features/problems.featur
|
||||
"""
|
||||
from textwrap import dedent
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.lms.courseware import CoursewarePage
|
||||
from common.test.acceptance.pages.lms.login_and_register import CombinedLoginAndRegisterPage
|
||||
from common.test.acceptance.pages.lms.problem import ProblemPage
|
||||
from common.test.acceptance.tests.helpers import EventsTestMixin, UniqueCourseTest
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
|
||||
class ProblemsTest(UniqueCourseTest):
|
||||
|
||||
@@ -3,17 +3,15 @@
|
||||
Tests the "preview" selector in the LMS that allows changing between Staff, Learner, and Content Groups.
|
||||
"""
|
||||
|
||||
|
||||
from textwrap import dedent
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.lms.courseware import CoursewarePage
|
||||
from common.test.acceptance.pages.lms.instructor_dashboard import InstructorDashboardPage
|
||||
from common.test.acceptance.pages.lms.staff_view import StaffCoursewarePage
|
||||
from common.test.acceptance.tests.helpers import UniqueCourseTest, create_user_partition_json
|
||||
from openedx.core.lib.tests import attr
|
||||
from xmodule.partitions.partitions import ENROLLMENT_TRACK_PARTITION_ID, MINIMUM_STATIC_PARTITION_ID, Group
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Acceptance tests for LMS-hosted Programs pages"""
|
||||
from nose.plugins.attrib import attr
|
||||
import pytest
|
||||
|
||||
from common.test.acceptance.fixtures.catalog import CatalogFixture, CatalogIntegrationMixin
|
||||
from common.test.acceptance.fixtures.course import CourseFixture
|
||||
@@ -74,9 +74,10 @@ class ProgramPageBase(ProgramsConfigMixin, CatalogIntegrationMixin, UniqueCourse
|
||||
cache_programs_page.visit()
|
||||
|
||||
|
||||
@attr(shard=21)
|
||||
class ProgramListingPageTest(ProgramPageBase):
|
||||
"""Verify user-facing behavior of the program listing page."""
|
||||
shard = 21
|
||||
|
||||
def setUp(self):
|
||||
super(ProgramListingPageTest, self).setUp()
|
||||
|
||||
@@ -108,7 +109,7 @@ class ProgramListingPageTest(ProgramPageBase):
|
||||
self.assertFalse(self.listing_page.are_cards_present)
|
||||
|
||||
|
||||
@attr('a11y')
|
||||
@pytest.mark.a11y
|
||||
class ProgramListingPageA11yTest(ProgramPageBase):
|
||||
"""Test program listing page accessibility."""
|
||||
def setUp(self):
|
||||
@@ -143,7 +144,7 @@ class ProgramListingPageA11yTest(ProgramPageBase):
|
||||
self.listing_page.a11y_audit.check_for_accessibility_errors()
|
||||
|
||||
|
||||
@attr('a11y')
|
||||
@pytest.mark.a11y
|
||||
class ProgramDetailsPageA11yTest(ProgramPageBase):
|
||||
"""Test program details page accessibility."""
|
||||
def setUp(self):
|
||||
|
||||
@@ -6,7 +6,7 @@ progress page.
|
||||
from contextlib import contextmanager
|
||||
|
||||
import ddt
|
||||
from nose.plugins.attrib import attr
|
||||
import pytest
|
||||
|
||||
from ...fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from ...pages.common.logout import LogoutPage
|
||||
@@ -127,13 +127,14 @@ class ProgressPageBaseTest(UniqueCourseTest):
|
||||
self.logout_page.visit()
|
||||
|
||||
|
||||
@attr(shard=22)
|
||||
@ddt.ddt
|
||||
class PersistentGradesTest(ProgressPageBaseTest):
|
||||
"""
|
||||
Test that grades for completed assessments are persisted
|
||||
when various edits are made.
|
||||
"""
|
||||
shard = 22
|
||||
|
||||
def setUp(self):
|
||||
super(PersistentGradesTest, self).setUp()
|
||||
self.instructor_dashboard_page = InstructorDashboardPage(self.browser, self.course_id)
|
||||
@@ -275,12 +276,13 @@ class PersistentGradesTest(ProgressPageBaseTest):
|
||||
self.assertEqual(self._get_section_score(), (0, 2))
|
||||
|
||||
|
||||
@attr(shard=22)
|
||||
class SubsectionGradingPolicyTest(ProgressPageBaseTest):
|
||||
"""
|
||||
Tests changing a subsection's 'graded' field
|
||||
and the effect it has on the progress page.
|
||||
"""
|
||||
shard = 22
|
||||
|
||||
def setUp(self):
|
||||
super(SubsectionGradingPolicyTest, self).setUp()
|
||||
self._set_policy_for_subsection("Homework", 0)
|
||||
@@ -417,7 +419,7 @@ class SubsectionGradingPolicyTest(ProgressPageBaseTest):
|
||||
self._check_scores_and_page_text([(1, 1), (0, 1)], (1, 2), "Homework 1 - Test Subsection 1 - 50% (1/2)")
|
||||
|
||||
|
||||
@attr('a11y')
|
||||
@pytest.mark.a11y
|
||||
class ProgressPageA11yTest(ProgressPageBaseTest):
|
||||
"""
|
||||
Class to test the accessibility of the progress page.
|
||||
|
||||
@@ -8,7 +8,6 @@ from uuid import uuid4
|
||||
|
||||
import ddt
|
||||
from dateutil.parser import parse
|
||||
from nose.plugins.attrib import attr
|
||||
from selenium.common.exceptions import TimeoutException
|
||||
|
||||
from common.test.acceptance.fixtures import LMS_BASE_URL
|
||||
@@ -29,6 +28,7 @@ from common.test.acceptance.pages.lms.teams import (
|
||||
TeamsPage
|
||||
)
|
||||
from common.test.acceptance.tests.helpers import EventsTestMixin, UniqueCourseTest, get_modal_alert
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
TOPICS_PER_PAGE = 12
|
||||
|
||||
|
||||
@@ -4,11 +4,6 @@ Acceptance tests for the Import and Export pages
|
||||
from abc import abstractmethod
|
||||
from datetime import datetime
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.pages.lms.course_home import CourseHomePage
|
||||
from common.test.acceptance.pages.lms.courseware import CoursewarePage
|
||||
from common.test.acceptance.pages.lms.staff_view import StaffCoursewarePage
|
||||
from common.test.acceptance.pages.studio.import_export import (
|
||||
ExportCoursePage,
|
||||
ExportLibraryPage,
|
||||
@@ -18,6 +13,7 @@ from common.test.acceptance.pages.studio.import_export import (
|
||||
from common.test.acceptance.pages.studio.library import LibraryEditPage
|
||||
from common.test.acceptance.pages.studio.overview import CourseOutlinePage
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest, StudioLibraryTest
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
|
||||
class ExportTestMixin(object):
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
Acceptance tests for adding components in Studio.
|
||||
"""
|
||||
import ddt
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.studio.container import ContainerPage
|
||||
@@ -11,13 +10,14 @@ from common.test.acceptance.pages.studio.utils import add_component, add_compone
|
||||
from common.test.acceptance.tests.studio.base_studio_test import ContainerBase
|
||||
|
||||
|
||||
@attr(shard=22)
|
||||
@ddt.ddt
|
||||
class AdvancedProblemComponentTest(ContainerBase):
|
||||
"""
|
||||
Feature: CMS.Component Adding
|
||||
As a course author, I want to be able to add a wide variety of components
|
||||
"""
|
||||
shard = 22
|
||||
|
||||
def setUp(self, is_staff=True):
|
||||
"""
|
||||
Create a course with a section, subsection, and unit to which to add the component.
|
||||
@@ -70,12 +70,13 @@ class AdvancedProblemComponentTest(ContainerBase):
|
||||
self.assertEqual(problem.name, component)
|
||||
|
||||
|
||||
@attr(shard=22)
|
||||
class ComponentTest(ContainerBase):
|
||||
"""
|
||||
Test class to add different components.
|
||||
(Not the advanced components)
|
||||
"""
|
||||
shard = 22
|
||||
|
||||
def setUp(self, is_staff=True):
|
||||
"""
|
||||
Create a course with a section, subsection, and unit to which to add the component.
|
||||
|
||||
@@ -6,7 +6,6 @@ for displaying containers within units.
|
||||
import datetime
|
||||
|
||||
import ddt
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from base_studio_test import ContainerBase
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
@@ -19,6 +18,7 @@ from common.test.acceptance.pages.studio.html_component_editor import HtmlXBlock
|
||||
from common.test.acceptance.pages.studio.move_xblock import MoveModalView
|
||||
from common.test.acceptance.pages.studio.utils import add_discussion
|
||||
from common.test.acceptance.tests.helpers import create_user_partition_json
|
||||
from openedx.core.lib.tests import attr
|
||||
from xmodule.partitions.partitions import ENROLLMENT_TRACK_PARTITION_ID, MINIMUM_STATIC_PARTITION_ID, Group
|
||||
|
||||
|
||||
|
||||
@@ -5,19 +5,17 @@ import uuid
|
||||
import random
|
||||
import string
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.studio.index import DashboardPage
|
||||
from common.test.acceptance.pages.studio.overview import CourseOutlinePage
|
||||
from common.test.acceptance.tests.helpers import AcceptanceTest
|
||||
|
||||
|
||||
@attr(shard=19)
|
||||
class CreateCourseTest(AcceptanceTest):
|
||||
"""
|
||||
Test that we can create a new course the studio home page.
|
||||
"""
|
||||
shard = 19
|
||||
|
||||
def setUp(self):
|
||||
"""
|
||||
|
||||
@@ -1,17 +1,16 @@
|
||||
"""
|
||||
Acceptance tests for course in studio
|
||||
"""
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.studio.index import DashboardPage
|
||||
from common.test.acceptance.pages.studio.users import CourseTeamPage
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest
|
||||
|
||||
|
||||
@attr(shard=2)
|
||||
class CourseTeamPageTest(StudioCourseTest):
|
||||
""" As a course author, I want to be able to add others to my team """
|
||||
shard = 2
|
||||
|
||||
def _make_user(self, username):
|
||||
""" Registers user and returns user representation dictionary as expected by `log_in` function """
|
||||
user = {
|
||||
|
||||
@@ -4,8 +4,6 @@ Test the Studio help links.
|
||||
|
||||
from unittest import skip
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
from common.test.acceptance.pages.studio.asset_index import AssetIndexPageStudioFrontend
|
||||
@@ -35,6 +33,7 @@ from common.test.acceptance.tests.helpers import (
|
||||
url_for_help
|
||||
)
|
||||
from common.test.acceptance.tests.studio.base_studio_test import ContainerBase, StudioCourseTest, StudioLibraryTest
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
|
||||
def _get_expected_documentation_url(path):
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
Acceptance tests for Content Libraries in Studio
|
||||
"""
|
||||
from ddt import data, ddt
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
@@ -10,6 +9,7 @@ from common.test.acceptance.pages.studio.library import LibraryEditPage
|
||||
from common.test.acceptance.pages.studio.users import LibraryUsersPage
|
||||
from common.test.acceptance.pages.studio.utils import add_component
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioLibraryTest
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
|
||||
@attr(shard=15)
|
||||
|
||||
@@ -4,7 +4,6 @@ Acceptance tests for Library Content in LMS
|
||||
import textwrap
|
||||
|
||||
import ddt
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.studio.library import StudioLibraryContainerXBlockWrapper, StudioLibraryContentEditor
|
||||
@@ -17,12 +16,13 @@ SUBSECTION_NAME = 'Test Subsection'
|
||||
UNIT_NAME = 'Test Unit'
|
||||
|
||||
|
||||
@attr(shard=17)
|
||||
@ddt.ddt
|
||||
class StudioLibraryContainerTest(StudioLibraryTest, UniqueCourseTest, TestWithSearchIndexMixin):
|
||||
"""
|
||||
Test Library Content block in LMS
|
||||
"""
|
||||
shard = 17
|
||||
|
||||
def setUp(self):
|
||||
"""
|
||||
Install library with some content and a course using fixtures
|
||||
|
||||
@@ -7,17 +7,14 @@ import json
|
||||
from datetime import datetime, timedelta
|
||||
from unittest import skip
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
from pytz import UTC
|
||||
|
||||
from base_studio_test import StudioCourseTest
|
||||
from common.test.acceptance.fixtures.config import ConfigModelFixture
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.utils import add_enrollment_course_modes
|
||||
from common.test.acceptance.pages.lms.course_home import CourseHomePage
|
||||
from common.test.acceptance.pages.lms.courseware import CoursewarePage
|
||||
from common.test.acceptance.pages.lms.progress import ProgressPage
|
||||
from common.test.acceptance.pages.lms.staff_view import StaffCoursewarePage
|
||||
from common.test.acceptance.pages.studio.overview import ContainerPage, CourseOutlinePage, ExpandCollapseLinkState
|
||||
from common.test.acceptance.pages.studio.settings import SettingsPage
|
||||
from common.test.acceptance.pages.studio.checklists import CourseChecklistsPage
|
||||
@@ -25,6 +22,7 @@ from common.test.acceptance.pages.studio.settings_advanced import AdvancedSettin
|
||||
from common.test.acceptance.pages.studio.settings_group_configurations import GroupConfigurationsPage
|
||||
from common.test.acceptance.pages.studio.utils import add_discussion, drag, verify_ordering
|
||||
from common.test.acceptance.tests.helpers import disable_animations, load_data_str
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
SECTION_NAME = 'Test Section'
|
||||
SUBSECTION_NAME = 'Test Subsection'
|
||||
|
||||
@@ -12,7 +12,6 @@ from textwrap import dedent
|
||||
|
||||
from bok_choy.promise import EmptyPromise
|
||||
from mock import patch
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
@@ -24,6 +23,7 @@ from common.test.acceptance.pages.studio.settings_advanced import AdvancedSettin
|
||||
from common.test.acceptance.pages.studio.settings_group_configurations import GroupConfigurationsPage
|
||||
from common.test.acceptance.pages.studio.utils import get_input_value, type_in_codemirror
|
||||
from common.test.acceptance.tests.helpers import create_user_partition_json, element_has_text
|
||||
from openedx.core.lib.tests import attr
|
||||
from xmodule.partitions.partitions import Group
|
||||
|
||||
|
||||
|
||||
@@ -3,8 +3,6 @@ Acceptance tests for Studio's Setting pages
|
||||
"""
|
||||
import re
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.pages.lms.create_mode import ModeCreationPage
|
||||
from common.test.acceptance.pages.studio.settings_advanced import AdvancedSettingsPage
|
||||
from common.test.acceptance.pages.studio.settings_certificates import CertificatesPage
|
||||
@@ -12,11 +10,12 @@ from common.test.acceptance.tests.helpers import skip_if_browser
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest
|
||||
|
||||
|
||||
@attr(shard=22)
|
||||
class CertificatesTest(StudioCourseTest):
|
||||
"""
|
||||
Tests for settings/certificates Page.
|
||||
"""
|
||||
shard = 22
|
||||
|
||||
def setUp(self): # pylint: disable=arguments-differ
|
||||
super(CertificatesTest, self).setUp(is_staff=True, test_xss=False)
|
||||
self.certificates_page = CertificatesPage(
|
||||
|
||||
@@ -3,8 +3,6 @@ Acceptance tests for Studio's Settings Details pages
|
||||
"""
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.config import ConfigModelFixture
|
||||
from common.test.acceptance.fixtures.course import CourseFixture
|
||||
from common.test.acceptance.pages.studio.overview import CourseOutlinePage
|
||||
@@ -18,9 +16,9 @@ from common.test.acceptance.tests.helpers import (
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
class StudioSettingsDetailsTest(StudioCourseTest):
|
||||
"""Base class for settings and details page tests."""
|
||||
shard = 4
|
||||
|
||||
def setUp(self, is_staff=True):
|
||||
super(StudioSettingsDetailsTest, self).setUp(is_staff=is_staff)
|
||||
@@ -35,11 +33,12 @@ class StudioSettingsDetailsTest(StudioCourseTest):
|
||||
self.settings_detail.visit()
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
class SettingsMilestonesTest(StudioSettingsDetailsTest):
|
||||
"""
|
||||
Tests for milestones feature in Studio's settings tab
|
||||
"""
|
||||
shard = 4
|
||||
|
||||
def test_page_has_prerequisite_field(self):
|
||||
"""
|
||||
Test to make sure page has pre-requisite course field if milestones app is enabled.
|
||||
@@ -168,9 +167,9 @@ class SettingsMilestonesTest(StudioSettingsDetailsTest):
|
||||
))
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
class CoursePacingTest(StudioSettingsDetailsTest):
|
||||
"""Tests for setting a course to self-paced."""
|
||||
shard = 4
|
||||
|
||||
def populate_course_fixture(self, __):
|
||||
ConfigModelFixture('/config/self_paced', {'enabled': True}).install()
|
||||
|
||||
@@ -5,7 +5,6 @@ Acceptance tests for Studio related to the split_test module.
|
||||
import math
|
||||
|
||||
from bok_choy.promise import Promise
|
||||
from nose.plugins.attrib import attr
|
||||
from selenium.webdriver.support.ui import Select
|
||||
|
||||
from base_studio_test import StudioCourseTest
|
||||
@@ -62,12 +61,12 @@ class SplitTestMixin(object):
|
||||
Promise(missing_groups_button_not_present, "Add missing groups button should not be showing.").fulfill()
|
||||
|
||||
|
||||
@attr(shard=15)
|
||||
class SplitTest(ContainerBase, SplitTestMixin):
|
||||
"""
|
||||
Tests for creating and editing split test instances in Studio.
|
||||
"""
|
||||
__test__ = True
|
||||
shard = 15
|
||||
|
||||
def setUp(self):
|
||||
super(SplitTest, self).setUp()
|
||||
@@ -177,11 +176,12 @@ class SplitTest(ContainerBase, SplitTestMixin):
|
||||
self.verify_groups(container, ['alpha'], [], verify_missing_groups_not_present=False)
|
||||
|
||||
|
||||
@attr(shard=15)
|
||||
class GroupConfigurationsNoSplitTest(StudioCourseTest):
|
||||
"""
|
||||
Tests how the Group Configuration page should look when the split_test module is not enabled.
|
||||
"""
|
||||
shard = 15
|
||||
|
||||
def setUp(self):
|
||||
super(GroupConfigurationsNoSplitTest, self).setUp()
|
||||
self.group_configurations_page = GroupConfigurationsPage(
|
||||
@@ -202,13 +202,13 @@ class GroupConfigurationsNoSplitTest(StudioCourseTest):
|
||||
self.assertFalse(self.group_configurations_page.experiment_group_sections_present)
|
||||
|
||||
|
||||
@attr(shard=15)
|
||||
class GroupConfigurationsTest(ContainerBase, SplitTestMixin):
|
||||
"""
|
||||
Tests that Group Configurations page works correctly with previously
|
||||
added configurations in Studio
|
||||
"""
|
||||
__test__ = True
|
||||
shard = 15
|
||||
|
||||
def setUp(self):
|
||||
super(GroupConfigurationsTest, self).setUp()
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
"""
|
||||
Acceptance tests for Studio related to the textbooks.
|
||||
"""
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.pages.lms.textbook_view import TextbookViewPage
|
||||
from common.test.acceptance.pages.studio.textbook_upload import TextbookUploadPage
|
||||
from common.test.acceptance.tests.helpers import disable_animations
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
|
||||
class TextbooksTest(StudioCourseTest):
|
||||
|
||||
@@ -3,7 +3,6 @@ End-to-end test for cohorted courseware. This uses both Studio and LMS.
|
||||
"""
|
||||
|
||||
from bok_choy.page_object import XSS_INJECTION
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
@@ -20,11 +19,11 @@ AUDIT_TRACK = "Audit"
|
||||
VERIFIED_TRACK = "Verified"
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
class EndToEndCohortedCoursewareTest(ContainerBase, CohortTestMixin):
|
||||
"""
|
||||
End-to-end of cohorted courseware.
|
||||
"""
|
||||
shard = 5
|
||||
|
||||
def setUp(self, is_staff=True):
|
||||
|
||||
|
||||
@@ -4,17 +4,16 @@
|
||||
Acceptance tests for CMS Video Editor.
|
||||
"""
|
||||
import ddt
|
||||
from nose.plugins.attrib import attr
|
||||
from common.test.acceptance.pages.common.utils import confirm_prompt
|
||||
from common.test.acceptance.tests.video.test_studio_video_module import CMSVideoBaseTest
|
||||
|
||||
|
||||
@attr(shard=6)
|
||||
@ddt.ddt
|
||||
class VideoEditorTest(CMSVideoBaseTest):
|
||||
"""
|
||||
CMS Video Editor Test Class
|
||||
"""
|
||||
shard = 6
|
||||
|
||||
def _create_video_component(self, subtitles=False):
|
||||
"""
|
||||
|
||||
@@ -6,8 +6,8 @@ Acceptance tests for CMS Video Module.
|
||||
import os
|
||||
from unittest import skipIf
|
||||
|
||||
import pytest
|
||||
from mock import patch
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from bok_choy.promise import EmptyPromise
|
||||
|
||||
@@ -171,11 +171,11 @@ class CMSVideoBaseTest(UniqueCourseTest):
|
||||
self.unit_page.xblocks[1].save_settings()
|
||||
|
||||
|
||||
@attr(shard=13)
|
||||
class CMSVideoTest(CMSVideoBaseTest):
|
||||
"""
|
||||
CMS Video Test Class
|
||||
"""
|
||||
shard = 13
|
||||
|
||||
def test_youtube_stub_proxy(self):
|
||||
"""
|
||||
@@ -334,7 +334,7 @@ class CMSVideoTest(CMSVideoBaseTest):
|
||||
self.video.click_player_button('play')
|
||||
|
||||
|
||||
@attr('a11y')
|
||||
@pytest.mark.a11y
|
||||
class CMSVideoA11yTest(CMSVideoBaseTest):
|
||||
"""
|
||||
CMS Video Accessibility Test Class
|
||||
|
||||
@@ -18,16 +18,14 @@ front-end validation will not pass.
|
||||
one stored on YouTube
|
||||
t_not_exist - this file does not exist on YouTube; it exists locally
|
||||
"""
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.tests.video.test_studio_video_module import CMSVideoBaseTest
|
||||
|
||||
|
||||
@attr(shard=18)
|
||||
class VideoTranscriptTest(CMSVideoBaseTest):
|
||||
"""
|
||||
CMS Video Transcript Test Class
|
||||
"""
|
||||
shard = 18
|
||||
|
||||
def _create_video_component(self, subtitles=False, subtitle_id='3_yD_cEKoCk'):
|
||||
"""
|
||||
|
||||
@@ -5,7 +5,6 @@ import json
|
||||
from unittest import skip
|
||||
|
||||
import ddt
|
||||
from nose.plugins.attrib import attr
|
||||
from opaque_keys.edx.keys import CourseKey, UsageKey
|
||||
|
||||
from common.test.acceptance.pages.lms.video.video import _parse_time_str
|
||||
@@ -59,9 +58,9 @@ class VideoEventsTestMixin(EventsTestMixin, VideoBaseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=21)
|
||||
class VideoEventsTest(VideoEventsTestMixin):
|
||||
""" Test video player event emission """
|
||||
shard = 21
|
||||
|
||||
def test_video_control_events(self):
|
||||
"""
|
||||
@@ -190,10 +189,10 @@ class VideoHLSEventsTest(VideoEventsTestMixin):
|
||||
self.assert_events_match(expected_events, captured_events)
|
||||
|
||||
|
||||
@attr(shard=19)
|
||||
@ddt.ddt
|
||||
class VideoBumperEventsTest(VideoEventsTestMixin):
|
||||
""" Test bumper video event emission """
|
||||
shard = 19
|
||||
|
||||
# helper methods
|
||||
def watch_video_and_skip(self):
|
||||
|
||||
@@ -3,16 +3,14 @@
|
||||
"""
|
||||
Acceptance tests for CMS Video Handout.
|
||||
"""
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.tests.video.test_studio_video_module import CMSVideoBaseTest
|
||||
|
||||
|
||||
@attr(shard=17)
|
||||
class VideoHandoutTest(CMSVideoBaseTest):
|
||||
"""
|
||||
CMS Video Handout Test Class
|
||||
"""
|
||||
shard = 17
|
||||
|
||||
def _create_course_unit_with_handout(self, handout_filename, save_settings=True):
|
||||
"""
|
||||
|
||||
@@ -4,20 +4,19 @@ Acceptance tests for licensing of the Video module
|
||||
"""
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from nose.plugins.attrib import attr
|
||||
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.lms.courseware import CoursewarePage
|
||||
from common.test.acceptance.pages.studio.overview import CourseOutlinePage
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest
|
||||
|
||||
|
||||
@attr(shard=22)
|
||||
class VideoLicenseTest(StudioCourseTest):
|
||||
"""
|
||||
Tests for video module-level licensing (that is, setting the license,
|
||||
for a specific video module, to All Rights Reserved or Creative Commons)
|
||||
"""
|
||||
shard = 22
|
||||
|
||||
def setUp(self): # pylint: disable=arguments-differ
|
||||
super(VideoLicenseTest, self).setUp()
|
||||
|
||||
|
||||
@@ -8,9 +8,6 @@ from unittest import skipIf
|
||||
|
||||
from ddt import data, ddt, unpack
|
||||
from mock import patch
|
||||
from nose.plugins.attrib import attr
|
||||
from selenium.webdriver.common.action_chains import ActionChains
|
||||
from selenium.webdriver.common.by import By
|
||||
|
||||
from common.test.acceptance.fixtures.course import CourseFixture, XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.common.auto_auth import AutoAuthPage
|
||||
@@ -24,6 +21,7 @@ from common.test.acceptance.tests.helpers import (
|
||||
is_youtube_available,
|
||||
skip_if_browser
|
||||
)
|
||||
from openedx.core.lib.tests import attr
|
||||
|
||||
VIDEO_SOURCE_PORT = 8777
|
||||
VIDEO_HOSTNAME = os.environ.get('BOK_CHOY_HOSTNAME', 'localhost')
|
||||
|
||||
@@ -2,6 +2,6 @@
|
||||
set -e
|
||||
|
||||
export LOWER_PYLINT_THRESHOLD=1000
|
||||
export UPPER_PYLINT_THRESHOLD=3825
|
||||
export UPPER_PYLINT_THRESHOLD=3800
|
||||
export ESLINT_THRESHOLD=5590
|
||||
export STYLELINT_THRESHOLD=973
|
||||
|
||||
Reference in New Issue
Block a user