Merge pull request #17854 from edx/youngstrom/increase-bokchoy-shards
Double the number of bok-choy shards
This commit is contained in:
@@ -311,7 +311,7 @@ class DiscussionNavigationTest(BaseDiscussionTestCase):
|
||||
self.assertEqual(self.thread_page.q(css=".forum-nav-thread-title").text[0], 'dummy thread title')
|
||||
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=19)
|
||||
class DiscussionTabSingleThreadTest(BaseDiscussionTestCase, DiscussionResponsePaginationTestMixin):
|
||||
"""
|
||||
Tests for the discussion page displaying a single thread
|
||||
|
||||
@@ -42,7 +42,7 @@ from common.test.acceptance.tests.helpers import (
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=19)
|
||||
class ForgotPasswordPageTest(UniqueCourseTest):
|
||||
"""
|
||||
Test that forgot password forms is rendered if url contains 'forgot-password-modal'
|
||||
@@ -84,7 +84,7 @@ class ForgotPasswordPageTest(UniqueCourseTest):
|
||||
self.assertIn("Check Your Email", self.reset_password_page.get_success_message())
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=19)
|
||||
class LoginFromCombinedPageTest(UniqueCourseTest):
|
||||
"""Test that we can log in using the combined login/registration page.
|
||||
|
||||
@@ -277,7 +277,7 @@ class LoginFromCombinedPageTest(UniqueCourseTest):
|
||||
return (email, password)
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=19)
|
||||
class RegisterFromCombinedPageTest(UniqueCourseTest):
|
||||
"""Test that we can register a new user from the combined login/registration page. """
|
||||
|
||||
@@ -302,7 +302,7 @@ class RegisterFromCombinedPageTest(UniqueCourseTest):
|
||||
self.assertEqual(self.register_page.current_form, "login")
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=19)
|
||||
class PayAndVerifyTest(EventsTestMixin, UniqueCourseTest):
|
||||
"""Test that we can proceed through the payment and verification flow."""
|
||||
def setUp(self):
|
||||
|
||||
@@ -141,6 +141,7 @@ class BaseLmsDashboardTestMultiple(UniqueCourseTest):
|
||||
self.dashboard_page.visit()
|
||||
|
||||
|
||||
@attr(shard=9)
|
||||
class LmsDashboardPageTest(BaseLmsDashboardTest):
|
||||
""" Test suite for the LMS Student Dashboard page """
|
||||
|
||||
|
||||
@@ -19,6 +19,8 @@ class DashboardSearchTest(AcceptanceTest):
|
||||
"""
|
||||
Test dashboard search.
|
||||
"""
|
||||
shard = 7
|
||||
|
||||
USERNAME = 'STUDENT_TESTER'
|
||||
EMAIL = 'student101@example.com'
|
||||
|
||||
|
||||
@@ -123,7 +123,7 @@ class EdxNotesTestMixin(UniqueCourseTest):
|
||||
self.edxnotes_fixture.install()
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
@attr(shard=18)
|
||||
class EdxNotesDefaultInteractionsTest(EdxNotesTestMixin):
|
||||
"""
|
||||
Tests for creation, editing, deleting annotations inside annotatable components in LMS.
|
||||
|
||||
@@ -113,7 +113,7 @@ class BulkEmailTest(BaseInstructorDashboardTest):
|
||||
self.send_email_page.a11y_audit.check_for_accessibility_errors()
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=3)
|
||||
class AutoEnrollmentWithCSVTest(BaseInstructorDashboardTest):
|
||||
"""
|
||||
End-to-end tests for Auto-Registration and enrollment functionality via CSV file.
|
||||
@@ -982,7 +982,7 @@ class CertificatesTest(BaseInstructorDashboardTest):
|
||||
self.certificates_section.a11y_audit.check_for_accessibility_errors()
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class CertificateInvalidationTest(BaseInstructorDashboardTest):
|
||||
"""
|
||||
Tests for Certificates functionality on instructor dashboard.
|
||||
@@ -1191,7 +1191,7 @@ class CertificateInvalidationTest(BaseInstructorDashboardTest):
|
||||
self.certificates_section.a11y_audit.check_for_accessibility_errors()
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class EcommerceTest(BaseInstructorDashboardTest):
|
||||
"""
|
||||
Bok Choy tests for the "E-Commerce" tab.
|
||||
|
||||
@@ -17,7 +17,7 @@ from common.test.acceptance.tests.helpers import UniqueCourseTest, create_user_p
|
||||
from xmodule.partitions.partitions import ENROLLMENT_TRACK_PARTITION_ID, MINIMUM_STATIC_PARTITION_ID, Group
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class StaffViewTest(UniqueCourseTest):
|
||||
"""
|
||||
Tests that verify the staff view.
|
||||
@@ -55,7 +55,7 @@ class StaffViewTest(UniqueCourseTest):
|
||||
return staff_page
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class CourseWithoutContentGroupsTest(StaffViewTest):
|
||||
"""
|
||||
Setup for tests that have no content restricted to specific content groups.
|
||||
@@ -86,7 +86,7 @@ class CourseWithoutContentGroupsTest(StaffViewTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class StaffViewToggleTest(CourseWithoutContentGroupsTest):
|
||||
"""
|
||||
Tests for the staff view toggle button.
|
||||
@@ -103,7 +103,7 @@ class StaffViewToggleTest(CourseWithoutContentGroupsTest):
|
||||
self.assertFalse(course_page.has_tab('Instructor'))
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class StaffDebugTest(CourseWithoutContentGroupsTest):
|
||||
"""
|
||||
Tests that verify the staff debug info.
|
||||
@@ -324,7 +324,7 @@ class CourseWithContentGroupsTest(StaffViewTest):
|
||||
)
|
||||
)
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
def test_staff_sees_all_problems(self):
|
||||
"""
|
||||
Scenario: Staff see all problems
|
||||
|
||||
@@ -167,7 +167,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
can_submit_blank = False
|
||||
can_update_save_notification = True
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=11)
|
||||
def test_answer_correctly(self):
|
||||
"""
|
||||
Scenario: I can answer a problem correctly
|
||||
@@ -212,7 +212,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
for event in expected_events:
|
||||
self.wait_for_events(event_filter=event, number_of_matches=1)
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=11)
|
||||
def test_answer_incorrectly(self):
|
||||
"""
|
||||
Scenario: I can answer a problem incorrectly
|
||||
@@ -233,7 +233,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
self.wait_for_status('incorrect')
|
||||
self.problem_page.wait_incorrect_notification()
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=11)
|
||||
def test_submit_blank_answer(self):
|
||||
"""
|
||||
Scenario: I can submit a blank answer
|
||||
@@ -255,7 +255,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
self.problem_page.click_submit()
|
||||
self.wait_for_status('incorrect')
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=11)
|
||||
def test_cant_submit_blank_answer(self):
|
||||
"""
|
||||
Scenario: I can't submit a blank answer
|
||||
@@ -271,7 +271,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
)
|
||||
self.assertTrue(self.problem_page.is_submit_disabled())
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=12)
|
||||
def test_can_show_answer(self):
|
||||
"""
|
||||
Scenario: Verifies that show answer button is working as expected.
|
||||
@@ -285,7 +285,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
self.problem_page.click_show()
|
||||
self.problem_page.wait_for_show_answer_notification()
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=12)
|
||||
def test_save_reaction(self):
|
||||
"""
|
||||
Scenario: Verify that the save button performs as expected with problem types
|
||||
@@ -319,7 +319,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
self.answer_problem(correctness='incorrect')
|
||||
self.assertFalse(self.problem_page.is_save_notification_visible())
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=12)
|
||||
def test_reset_clears_answer_and_focus(self):
|
||||
"""
|
||||
Scenario: Reset will clear answers and focus on problem meta
|
||||
@@ -344,7 +344,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
# Answer should be reset
|
||||
self.wait_for_status('unanswered')
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=12)
|
||||
def test_reset_shows_errors(self):
|
||||
"""
|
||||
Scenario: Reset will show server errors
|
||||
@@ -362,7 +362,7 @@ class ProblemTypeTestMixin(ProblemTypeA11yTestMixin):
|
||||
self.problem_page.click_reset()
|
||||
self.problem_page.wait_for_gentle_alert_notification()
|
||||
|
||||
@attr(shard=7)
|
||||
@attr(shard=12)
|
||||
def test_partially_complete_notifications(self):
|
||||
"""
|
||||
Scenario: If a partially correct problem is submitted the correct notification is shown
|
||||
@@ -571,7 +571,6 @@ class CheckboxProblemTypeTest(CheckboxProblemTypeBase, ProblemTypeTestMixin):
|
||||
"""
|
||||
Standard tests for the Checkbox Problem Type
|
||||
"""
|
||||
@attr(shard=7)
|
||||
def test_can_show_answer(self):
|
||||
"""
|
||||
Scenario: Verifies that show answer button is working as expected.
|
||||
@@ -632,7 +631,6 @@ class MultipleChoiceProblemTypeTest(MultipleChoiceProblemTypeBase, ProblemTypeTe
|
||||
"""
|
||||
Standard tests for the Multiple Choice Problem Type
|
||||
"""
|
||||
@attr(shard=7)
|
||||
def test_can_show_answer(self):
|
||||
"""
|
||||
Scenario: Verifies that show answer button is working as expected.
|
||||
@@ -847,6 +845,7 @@ class NumericalProblemTypeTest(NumericalProblemTypeBase, ProblemTypeTestMixin):
|
||||
"""
|
||||
Standard tests for the Numerical Problem Type
|
||||
"""
|
||||
@attr(shard=12)
|
||||
def test_error_input_gentle_alert(self):
|
||||
"""
|
||||
Scenario: I can answer a problem with erroneous input and will see a gentle alert
|
||||
@@ -1058,6 +1057,7 @@ class CodeProblemTypeTest(CodeProblemTypeBase, ProblemTypeTestMixin):
|
||||
"""
|
||||
Standard tests for the Code Problem Type
|
||||
"""
|
||||
@attr(shard=12)
|
||||
def test_answer_incorrectly(self):
|
||||
"""
|
||||
Overridden for script test because the testing grader always responds
|
||||
@@ -1065,6 +1065,7 @@ class CodeProblemTypeTest(CodeProblemTypeBase, ProblemTypeTestMixin):
|
||||
"""
|
||||
pass
|
||||
|
||||
@attr(shard=12)
|
||||
def test_submit_blank_answer(self):
|
||||
"""
|
||||
Overridden for script test because the testing grader always responds
|
||||
@@ -1072,6 +1073,7 @@ class CodeProblemTypeTest(CodeProblemTypeBase, ProblemTypeTestMixin):
|
||||
"""
|
||||
pass
|
||||
|
||||
@attr(shard=12)
|
||||
def test_cant_submit_blank_answer(self):
|
||||
"""
|
||||
Overridden for script test because the testing grader always responds
|
||||
@@ -1079,6 +1081,7 @@ class CodeProblemTypeTest(CodeProblemTypeBase, ProblemTypeTestMixin):
|
||||
"""
|
||||
pass
|
||||
|
||||
@attr(shard=12)
|
||||
def wait_for_status(self, status):
|
||||
"""
|
||||
Overridden for script test because the testing grader always responds
|
||||
|
||||
@@ -62,6 +62,7 @@ class ProgramPageBase(ProgramsConfigMixin, CatalogIntegrationMixin, UniqueCourse
|
||||
cache_programs_page.visit()
|
||||
|
||||
|
||||
@attr(shard=21)
|
||||
class ProgramListingPageTest(ProgramPageBase):
|
||||
"""Verify user-facing behavior of the program listing page."""
|
||||
def setUp(self):
|
||||
|
||||
@@ -127,7 +127,7 @@ class ProgressPageBaseTest(UniqueCourseTest):
|
||||
self.logout_page.visit()
|
||||
|
||||
|
||||
@attr(shard=9)
|
||||
@attr(shard=22)
|
||||
@ddt.ddt
|
||||
class PersistentGradesTest(ProgressPageBaseTest):
|
||||
"""
|
||||
@@ -275,7 +275,7 @@ class PersistentGradesTest(ProgressPageBaseTest):
|
||||
self.assertEqual(self._get_section_score(), (0, 2))
|
||||
|
||||
|
||||
@attr(shard=9)
|
||||
@attr(shard=22)
|
||||
class SubsectionGradingPolicyTest(ProgressPageBaseTest):
|
||||
"""
|
||||
Tests changing a subsection's 'graded' field
|
||||
|
||||
@@ -887,7 +887,6 @@ class BrowseTeamsWithinTopicTest(TeamsTabBase):
|
||||
alert.accept()
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
class TeamFormActions(TeamsTabBase):
|
||||
"""
|
||||
Base class for create, edit, and delete team.
|
||||
@@ -986,6 +985,7 @@ class TeamFormActions(TeamsTabBase):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
@ddt.ddt
|
||||
class CreateTeamTest(TeamFormActions):
|
||||
"""
|
||||
@@ -1180,6 +1180,7 @@ class CreateTeamTest(TeamFormActions):
|
||||
self.verify_and_navigate_to_create_team_page()
|
||||
|
||||
|
||||
@attr(shard=21)
|
||||
@ddt.ddt
|
||||
class DeleteTeamTest(TeamFormActions):
|
||||
"""
|
||||
@@ -1303,6 +1304,7 @@ class DeleteTeamTest(TeamFormActions):
|
||||
self.teams_page.verify_topic_team_count(0)
|
||||
|
||||
|
||||
@attr(shard=17)
|
||||
@ddt.ddt
|
||||
class EditTeamTest(TeamFormActions):
|
||||
"""
|
||||
@@ -1519,6 +1521,7 @@ class EditTeamTest(TeamFormActions):
|
||||
self.verify_and_navigate_to_edit_team_page()
|
||||
|
||||
|
||||
@attr(shard=17)
|
||||
@ddt.ddt
|
||||
class EditMembershipTest(TeamFormActions):
|
||||
"""
|
||||
@@ -1620,7 +1623,7 @@ class EditMembershipTest(TeamFormActions):
|
||||
self.edit_membership_helper(role, cancel=True)
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
@attr(shard=17)
|
||||
@ddt.ddt
|
||||
class TeamPageTest(TeamsTabBase):
|
||||
"""Tests for viewing a specific team"""
|
||||
|
||||
@@ -12,6 +12,7 @@ class UnicodeUsernameAdminTest(AcceptanceTest):
|
||||
"""
|
||||
Tests if it is possible to update users with unicode usernames in the admin.
|
||||
"""
|
||||
shard = 21
|
||||
|
||||
# The word below reads "Omar II", in Arabic. It also contains a space and
|
||||
# an Eastern Arabic Number another option is to use the Esperanto fake
|
||||
|
||||
@@ -12,6 +12,7 @@ class AccessibilityPageTest(AcceptanceTest):
|
||||
"""
|
||||
Test that a user can access the page and submit studio accessibility feedback.
|
||||
"""
|
||||
shard = 21
|
||||
|
||||
def setUp(self):
|
||||
"""
|
||||
|
||||
@@ -12,6 +12,7 @@ class XBlockAcidBase(AcceptanceTest):
|
||||
"""
|
||||
Base class for tests that verify that XBlock integration is working correctly
|
||||
"""
|
||||
shard = 21
|
||||
__test__ = False
|
||||
|
||||
def setUp(self):
|
||||
|
||||
@@ -10,6 +10,7 @@ from common.test.acceptance.pages.studio.asset_index import UPLOAD_FILE_DIR
|
||||
|
||||
class AssetIndexTestStudioFrontend(StudioCourseTest):
|
||||
"""Tests for the Asset index page."""
|
||||
shard = 21
|
||||
|
||||
def setUp(self, is_staff=False): # pylint: disable=arguments-differ
|
||||
super(AssetIndexTestStudioFrontend, self).setUp()
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
"""
|
||||
Acceptance tests that ensure components with bad content do not break page.
|
||||
"""
|
||||
from base_studio_test import ContainerBase
|
||||
from common.test.acceptance.fixtures.course import XBlockFixtureDesc
|
||||
from common.test.acceptance.pages.studio.utils import verify_ordering
|
||||
@@ -7,6 +10,7 @@ class BadComponentTest(ContainerBase):
|
||||
"""
|
||||
Tests that components with bad content do not break the Unit page.
|
||||
"""
|
||||
shard = 21
|
||||
__test__ = False
|
||||
|
||||
def get_bad_html_content(self):
|
||||
|
||||
@@ -11,7 +11,7 @@ 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=9)
|
||||
@attr(shard=22)
|
||||
@ddt.ddt
|
||||
class AdvancedProblemComponentTest(ContainerBase):
|
||||
"""
|
||||
@@ -70,7 +70,7 @@ class AdvancedProblemComponentTest(ContainerBase):
|
||||
self.assertEqual(problem.name, component)
|
||||
|
||||
|
||||
@attr(shard=9)
|
||||
@attr(shard=22)
|
||||
class ComponentTest(ContainerBase):
|
||||
"""
|
||||
Test class to add different components.
|
||||
|
||||
@@ -181,7 +181,7 @@ class DeleteComponentTest(NestedVerticalTest):
|
||||
self.delete_and_verify(group_a_item_1_delete_index, expected_ordering)
|
||||
|
||||
|
||||
@attr(shard=1)
|
||||
@attr(shard=16)
|
||||
class EditContainerTest(NestedVerticalTest):
|
||||
"""
|
||||
Tests of editing a container.
|
||||
@@ -414,7 +414,11 @@ class BaseGroupConfigurationsTest(ContainerBase):
|
||||
self.assertFalse(component.has_validation_error)
|
||||
|
||||
|
||||
@attr(shard=21)
|
||||
class UnitAccessContainerTest(BaseGroupConfigurationsTest):
|
||||
"""
|
||||
Tests unit level access
|
||||
"""
|
||||
GROUP_RESTRICTED_MESSAGE = 'Access to this unit is restricted to: Dogs'
|
||||
|
||||
def _toggle_container_unit_access(self, group_ids, unit):
|
||||
@@ -467,7 +471,7 @@ class UnitAccessContainerTest(BaseGroupConfigurationsTest):
|
||||
self._verify_container_unit_access_message([self.id_base + 1], self.GROUP_RESTRICTED_MESSAGE)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=9)
|
||||
class ContentGroupVisibilityModalTest(BaseGroupConfigurationsTest):
|
||||
"""
|
||||
Tests of the visibility settings modal for components on the unit
|
||||
@@ -698,7 +702,7 @@ class EnrollmentTrackVisibilityModalTest(BaseGroupConfigurationsTest):
|
||||
self.verify_component_group_visibility_messsage(self.html_component, "Audit Track")
|
||||
|
||||
|
||||
@attr(shard=1)
|
||||
@attr(shard=16)
|
||||
class UnitPublishingTest(ContainerBase):
|
||||
"""
|
||||
Tests of the publishing control and related widgets on the Unit page.
|
||||
@@ -1228,7 +1232,7 @@ class ProblemCategoryTabsTest(ContainerBase):
|
||||
self.assertEqual(page.get_category_tab_components('problem', 1), expected_components)
|
||||
|
||||
|
||||
@attr(shard=1)
|
||||
@attr(shard=16)
|
||||
@ddt.ddt
|
||||
class MoveComponentTest(ContainerBase):
|
||||
"""
|
||||
|
||||
@@ -11,7 +11,7 @@ from common.test.acceptance.pages.studio.overview import CourseOutlinePage
|
||||
from common.test.acceptance.tests.helpers import AcceptanceTest
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=19)
|
||||
class CreateCourseTest(AcceptanceTest):
|
||||
"""
|
||||
Test that we can create a new course the studio home page.
|
||||
|
||||
@@ -12,6 +12,7 @@ class UsersCanAddUpdatesTest(StudioCourseTest):
|
||||
"""
|
||||
Series of Bok Choy Tests to test the Course Updates page
|
||||
"""
|
||||
shard = 21
|
||||
|
||||
def _create_and_verify_update(self, message):
|
||||
"""
|
||||
|
||||
@@ -26,6 +26,8 @@ class LoggedOutTest(AcceptanceTest):
|
||||
"""
|
||||
Smoke test for pages in Studio that are visible when logged out.
|
||||
"""
|
||||
shard = 21
|
||||
|
||||
def setUp(self):
|
||||
super(LoggedOutTest, self).setUp()
|
||||
self.pages = [LoginPage(self.browser), IndexPage(self.browser), SignupPage(self.browser),
|
||||
@@ -45,6 +47,8 @@ class LoggedInPagesTest(AcceptanceTest):
|
||||
"""
|
||||
Verify the pages in Studio that you can get to when logged in and do not have a course yet.
|
||||
"""
|
||||
shard = 21
|
||||
|
||||
def setUp(self):
|
||||
super(LoggedInPagesTest, self).setUp()
|
||||
self.auth_page = AutoAuthPage(self.browser, staff=True)
|
||||
@@ -64,6 +68,8 @@ class SignUpAndSignInTest(UniqueCourseTest):
|
||||
"""
|
||||
Test studio sign-up and sign-in
|
||||
"""
|
||||
shard = 21
|
||||
|
||||
def setUp(self): # pylint: disable=arguments-differ
|
||||
super(SignUpAndSignInTest, self).setUp()
|
||||
self.sign_up_page = SignupPage(self.browser)
|
||||
@@ -215,7 +221,7 @@ class CoursePagesTest(StudioCourseTest):
|
||||
Tests that verify the pages in Studio that you can get to when logged
|
||||
in and have a course.
|
||||
"""
|
||||
|
||||
shard = 21
|
||||
COURSE_ID_SEPARATOR = "."
|
||||
|
||||
def setUp(self):
|
||||
@@ -267,6 +273,7 @@ class DiscussionPreviewTest(StudioCourseTest):
|
||||
"""
|
||||
Tests that Inline Discussions are rendered with a custom preview in Studio
|
||||
"""
|
||||
shard = 21
|
||||
|
||||
def setUp(self):
|
||||
super(DiscussionPreviewTest, self).setUp()
|
||||
|
||||
@@ -44,7 +44,7 @@ def _get_expected_documentation_url(path):
|
||||
return url_for_help('course_author', path)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class StudioHelpTest(StudioCourseTest):
|
||||
"""Tests for Studio help."""
|
||||
|
||||
@@ -84,7 +84,7 @@ class StudioHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class SignInHelpTest(AcceptanceTest):
|
||||
"""
|
||||
Tests help links on 'Sign In' page
|
||||
@@ -115,7 +115,7 @@ class SignInHelpTest(AcceptanceTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class SignUpHelpTest(AcceptanceTest):
|
||||
"""
|
||||
Tests help links on 'Sign Up' page.
|
||||
@@ -146,7 +146,7 @@ class SignUpHelpTest(AcceptanceTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class HomeHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on 'Home'(Courses tab) page.
|
||||
@@ -195,7 +195,7 @@ class HomeHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class NewCourseHelpTest(AcceptanceTest):
|
||||
"""
|
||||
Test help links while creating a new course.
|
||||
@@ -248,7 +248,7 @@ class NewCourseHelpTest(AcceptanceTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class NewLibraryHelpTest(AcceptanceTest):
|
||||
"""
|
||||
Test help links while creating a new library
|
||||
@@ -301,7 +301,7 @@ class NewLibraryHelpTest(AcceptanceTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class LibraryTabHelpTest(AcceptanceTest):
|
||||
"""
|
||||
Test help links on the library tab present at dashboard.
|
||||
@@ -334,7 +334,7 @@ class LibraryTabHelpTest(AcceptanceTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class LibraryHelpTest(StudioLibraryTest):
|
||||
"""
|
||||
Test help links on a Library page.
|
||||
@@ -408,7 +408,7 @@ class LibraryHelpTest(StudioLibraryTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class LibraryImportHelpTest(StudioLibraryTest):
|
||||
"""
|
||||
Test help links on a Library import and export pages.
|
||||
@@ -456,7 +456,7 @@ class LibraryImportHelpTest(StudioLibraryTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class LibraryExportHelpTest(StudioLibraryTest):
|
||||
"""
|
||||
Test help links on a Library export pages.
|
||||
@@ -504,7 +504,7 @@ class LibraryExportHelpTest(StudioLibraryTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class CourseOutlineHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on course outline page.
|
||||
@@ -559,7 +559,7 @@ class CourseOutlineHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class CourseUpdateHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Test help links on Course Update page
|
||||
@@ -593,7 +593,7 @@ class CourseUpdateHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class AssetIndexHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Test help links on Course 'Files & Uploads' page
|
||||
@@ -627,7 +627,7 @@ class AssetIndexHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class CoursePagesHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Test help links on Course 'Pages' page
|
||||
@@ -661,7 +661,7 @@ class CoursePagesHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class UploadTextbookHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Test help links on Course 'Textbooks' page
|
||||
@@ -714,7 +714,7 @@ class UploadTextbookHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class StudioUnitHelpTest(ContainerBase):
|
||||
"""
|
||||
Tests help links on Unit page.
|
||||
@@ -763,7 +763,7 @@ class StudioUnitHelpTest(ContainerBase):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class SettingsHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on Schedule and Details Settings page
|
||||
@@ -799,7 +799,7 @@ class SettingsHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class GradingPageHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on Grading page
|
||||
@@ -835,7 +835,7 @@ class GradingPageHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class CourseTeamSettingsHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on Course Team settings page
|
||||
@@ -871,7 +871,7 @@ class CourseTeamSettingsHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class CourseGroupConfigurationHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on course Group Configurations settings page
|
||||
@@ -928,7 +928,7 @@ class CourseGroupConfigurationHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class AdvancedSettingHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on course Advanced Settings page.
|
||||
@@ -964,7 +964,7 @@ class AdvancedSettingHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class CertificatePageHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on course Certificate settings page.
|
||||
@@ -1019,7 +1019,7 @@ class CertificatePageHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class GroupExperimentConfigurationHelpTest(ContainerBase):
|
||||
"""
|
||||
Tests help links on course Group Configurations settings page
|
||||
@@ -1072,7 +1072,7 @@ class GroupExperimentConfigurationHelpTest(ContainerBase):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class ToolsImportHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on tools import pages.
|
||||
@@ -1127,7 +1127,7 @@ class ToolsImportHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class ToolsExportHelpTest(StudioCourseTest):
|
||||
"""
|
||||
Tests help links on tools export pages.
|
||||
@@ -1182,7 +1182,7 @@ class ToolsExportHelpTest(StudioCourseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=10)
|
||||
@attr(shard=20)
|
||||
class StudioWelcomeHelpTest(AcceptanceTest):
|
||||
"""
|
||||
Tests help link on 'Welcome' page ( User not logged in)
|
||||
|
||||
@@ -32,6 +32,8 @@ class CreateLibraryTest(AcceptanceTest):
|
||||
|
||||
class StudioLanguageTest(AcceptanceTest):
|
||||
""" Test suite for the Studio Language """
|
||||
shard = 21
|
||||
|
||||
def setUp(self):
|
||||
super(StudioLanguageTest, self).setUp()
|
||||
self.dashboard_page = DashboardPage(self.browser)
|
||||
|
||||
@@ -12,7 +12,7 @@ from common.test.acceptance.pages.studio.utils import add_component
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioLibraryTest
|
||||
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=15)
|
||||
@ddt
|
||||
class LibraryEditPageTest(StudioLibraryTest):
|
||||
"""
|
||||
@@ -184,7 +184,7 @@ class LibraryEditPageTest(StudioLibraryTest):
|
||||
self.assertIn("Checkboxes", problem_block.name)
|
||||
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=15)
|
||||
@ddt
|
||||
class LibraryNavigationTest(StudioLibraryTest):
|
||||
"""
|
||||
@@ -500,6 +500,7 @@ class LibraryNavigationTest(StudioLibraryTest):
|
||||
self.assertFalse(target_block.is_placeholder())
|
||||
|
||||
|
||||
@attr(shard=21)
|
||||
class LibraryUsersPageTest(StudioLibraryTest):
|
||||
"""
|
||||
Test the functionality of the library "Instructor Access" page.
|
||||
|
||||
@@ -17,7 +17,7 @@ SUBSECTION_NAME = 'Test Subsection'
|
||||
UNIT_NAME = 'Test Unit'
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
@attr(shard=17)
|
||||
@ddt.ddt
|
||||
class StudioLibraryContainerTest(StudioLibraryTest, UniqueCourseTest, TestWithSearchIndexMixin):
|
||||
"""
|
||||
|
||||
@@ -603,7 +603,7 @@ class UnitAccessTest(CourseOutlineTest):
|
||||
self.assertEqual(course_home_page.outline.num_units, 2)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class StaffLockTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Sections, subsections, and units can be locked and unlocked from the course outline.
|
||||
@@ -946,7 +946,7 @@ class StaffLockTest(CourseOutlineTest):
|
||||
self._remove_staff_lock_and_verify_warning(subsection, False)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class EditNamesTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Click-to-edit section/subsection names
|
||||
@@ -1062,7 +1062,7 @@ class EditNamesTest(CourseOutlineTest):
|
||||
self.assertTrue(self.course_outline_page.section_at(0).is_collapsed)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class CreateSectionsTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Create new sections/subsections/units
|
||||
@@ -1149,7 +1149,7 @@ class CreateSectionsTest(CourseOutlineTest):
|
||||
self.assertTrue(unit_page.is_inline_editing_display_name())
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class DeleteContentTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Deleting sections/subsections/units
|
||||
@@ -1261,7 +1261,7 @@ class DeleteContentTest(CourseOutlineTest):
|
||||
self.assertTrue(self.course_outline_page.has_no_content_message)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class ExpandCollapseMultipleSectionsTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Courses with multiple sections can expand and collapse all sections.
|
||||
@@ -1397,7 +1397,7 @@ class ExpandCollapseMultipleSectionsTest(CourseOutlineTest):
|
||||
self.verify_all_sections(collapsed=False)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class ExpandCollapseSingleSectionTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Courses with a single section can expand and collapse all sections.
|
||||
@@ -1437,7 +1437,7 @@ class ExpandCollapseSingleSectionTest(CourseOutlineTest):
|
||||
self.assertFalse(self.course_outline_page.section_at(0).subsection_at(1).is_collapsed)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class ExpandCollapseEmptyTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Courses with no sections initially can expand and collapse all sections after addition.
|
||||
@@ -1475,7 +1475,7 @@ class ExpandCollapseEmptyTest(CourseOutlineTest):
|
||||
self.assertFalse(self.course_outline_page.section_at(0).is_collapsed)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class DefaultStatesEmptyTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Misc course outline default states/actions when starting with an empty course
|
||||
@@ -1500,7 +1500,7 @@ class DefaultStatesEmptyTest(CourseOutlineTest):
|
||||
self.assertTrue(self.course_outline_page.bottom_add_section_button.is_present())
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=14)
|
||||
class DefaultStatesContentTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Misc course outline default states/actions when starting with a course with content
|
||||
@@ -1525,7 +1525,7 @@ class DefaultStatesContentTest(CourseOutlineTest):
|
||||
self.assertEqual(courseware.xblock_component_type(2), 'discussion')
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=7)
|
||||
class UnitNavigationTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Navigate to units
|
||||
@@ -1546,7 +1546,7 @@ class UnitNavigationTest(CourseOutlineTest):
|
||||
unit.wait_for_page()
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=7)
|
||||
class PublishSectionTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Publish sections.
|
||||
@@ -1673,7 +1673,7 @@ class PublishSectionTest(CourseOutlineTest):
|
||||
return (section, subsection, unit)
|
||||
|
||||
|
||||
@attr(shard=3)
|
||||
@attr(shard=7)
|
||||
class DeprecationWarningMessageTest(CourseOutlineTest):
|
||||
"""
|
||||
Feature: Verify deprecation warning message.
|
||||
|
||||
@@ -19,7 +19,7 @@ class CourseRerunTest(StudioCourseTest):
|
||||
"""
|
||||
Feature: Courses can be rerun
|
||||
"""
|
||||
|
||||
shard = 21
|
||||
__test__ = True
|
||||
|
||||
SECTION_NAME = 'Rerun Section'
|
||||
|
||||
@@ -24,7 +24,7 @@ from common.test.acceptance.tests.helpers import create_user_partition_json, ele
|
||||
from xmodule.partitions.partitions import Group
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=19)
|
||||
class ContentGroupConfigurationTest(StudioCourseTest):
|
||||
"""
|
||||
Tests for content groups in the Group Configurations Page.
|
||||
@@ -233,8 +233,11 @@ class ContentGroupConfigurationTest(StudioCourseTest):
|
||||
self.outline_page.wait_for_page()
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
@attr(shard=17)
|
||||
class EnrollmentTrackModeTest(StudioCourseTest):
|
||||
"""
|
||||
Tests for the enrollment tracks section
|
||||
"""
|
||||
|
||||
def setUp(self, is_staff=True, test_xss=True):
|
||||
super(EnrollmentTrackModeTest, self).setUp(is_staff=is_staff)
|
||||
@@ -283,7 +286,7 @@ class EnrollmentTrackModeTest(StudioCourseTest):
|
||||
self.assertEqual(len(groups), 0)
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=19)
|
||||
class AdvancedSettingsValidationTest(StudioCourseTest):
|
||||
"""
|
||||
Tests for validation feature in Studio's advanced settings tab
|
||||
@@ -455,7 +458,7 @@ class AdvancedSettingsValidationTest(StudioCourseTest):
|
||||
self.assertEquals(set(displayed_fields), set(expected_fields))
|
||||
|
||||
|
||||
@attr(shard=1)
|
||||
@attr(shard=16)
|
||||
class ContentLicenseTest(StudioCourseTest):
|
||||
"""
|
||||
Tests for course-level licensing (that is, setting the license,
|
||||
@@ -617,7 +620,7 @@ class StudioSubsectionSettingsA11yTest(StudioCourseTest):
|
||||
self.course_outline.a11y_audit.check_for_accessibility_errors()
|
||||
|
||||
|
||||
@attr(shard=1)
|
||||
@attr(shard=16)
|
||||
class StudioSettingsImageUploadTest(StudioCourseTest):
|
||||
"""
|
||||
Class to test course settings image uploads.
|
||||
@@ -655,7 +658,7 @@ class StudioSettingsImageUploadTest(StudioCourseTest):
|
||||
self.assertIn(file_to_upload, self.settings_page.get_uploaded_image_path('#video-thumbnail-image'))
|
||||
|
||||
|
||||
@attr(shard=1)
|
||||
@attr(shard=16)
|
||||
class CourseSettingsTest(StudioCourseTest):
|
||||
"""
|
||||
Class to test course settings.
|
||||
|
||||
@@ -12,7 +12,7 @@ from common.test.acceptance.tests.helpers import skip_if_browser
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=22)
|
||||
class CertificatesTest(StudioCourseTest):
|
||||
"""
|
||||
Tests for settings/certificates Page.
|
||||
|
||||
@@ -62,7 +62,7 @@ class SplitTestMixin(object):
|
||||
Promise(missing_groups_button_not_present, "Add missing groups button should not be showing.").fulfill()
|
||||
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=15)
|
||||
class SplitTest(ContainerBase, SplitTestMixin):
|
||||
"""
|
||||
Tests for creating and editing split test instances in Studio.
|
||||
@@ -177,7 +177,7 @@ class SplitTest(ContainerBase, SplitTestMixin):
|
||||
self.verify_groups(container, ['alpha'], [], verify_missing_groups_not_present=False)
|
||||
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=15)
|
||||
class GroupConfigurationsNoSplitTest(StudioCourseTest):
|
||||
"""
|
||||
Tests how the Group Configuration page should look when the split_test module is not enabled.
|
||||
@@ -202,7 +202,7 @@ class GroupConfigurationsNoSplitTest(StudioCourseTest):
|
||||
self.assertFalse(self.group_configurations_page.experiment_group_sections_present)
|
||||
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=15)
|
||||
class GroupConfigurationsTest(ContainerBase, SplitTestMixin):
|
||||
"""
|
||||
Tests that Group Configurations page works correctly with previously
|
||||
|
||||
@@ -29,7 +29,7 @@ class TextbooksTest(StudioCourseTest):
|
||||
|
||||
self.textbook_view_page = TextbookViewPage(self.browser, self.course_id)
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=9)
|
||||
def test_create_first_book_message(self):
|
||||
"""
|
||||
Scenario: A message is displayed on the textbooks page when there are no uploaded textbooks
|
||||
@@ -40,7 +40,7 @@ class TextbooksTest(StudioCourseTest):
|
||||
message = self.textbook_upload_page.get_element_text('.wrapper-content .no-textbook-content')
|
||||
self.assertIn("You haven't added any textbooks", message)
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=9)
|
||||
def test_new_textbook_upload(self):
|
||||
"""
|
||||
Scenario: View Live link for textbook is correctly populated
|
||||
|
||||
@@ -162,7 +162,7 @@ class CMSVideoBaseTest(UniqueCourseTest):
|
||||
self.unit_page.xblocks[1].save_settings()
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
@attr(shard=13)
|
||||
class CMSVideoTest(CMSVideoBaseTest):
|
||||
"""
|
||||
CMS Video Test Class
|
||||
|
||||
@@ -23,7 +23,7 @@ from nose.plugins.attrib import attr
|
||||
from common.test.acceptance.tests.video.test_studio_video_module import CMSVideoBaseTest
|
||||
|
||||
|
||||
@attr(shard=6)
|
||||
@attr(shard=18)
|
||||
class VideoTranscriptTest(CMSVideoBaseTest):
|
||||
"""
|
||||
CMS Video Transcript Test Class
|
||||
|
||||
@@ -58,6 +58,7 @@ class VideoEventsTestMixin(EventsTestMixin, VideoBaseTest):
|
||||
)
|
||||
|
||||
|
||||
@attr(shard=21)
|
||||
class VideoEventsTest(VideoEventsTestMixin):
|
||||
""" Test video player event emission """
|
||||
|
||||
@@ -188,7 +189,7 @@ class VideoHLSEventsTest(VideoEventsTestMixin):
|
||||
self.assert_events_match(expected_events, captured_events)
|
||||
|
||||
|
||||
@attr(shard=8)
|
||||
@attr(shard=19)
|
||||
@ddt.ddt
|
||||
class VideoBumperEventsTest(VideoEventsTestMixin):
|
||||
""" Test bumper video event emission """
|
||||
|
||||
@@ -8,7 +8,7 @@ from nose.plugins.attrib import attr
|
||||
from common.test.acceptance.tests.video.test_studio_video_module import CMSVideoBaseTest
|
||||
|
||||
|
||||
@attr(shard=5)
|
||||
@attr(shard=17)
|
||||
class VideoHandoutTest(CMSVideoBaseTest):
|
||||
"""
|
||||
CMS Video Handout Test Class
|
||||
|
||||
@@ -12,7 +12,7 @@ from common.test.acceptance.pages.studio.overview import CourseOutlinePage
|
||||
from common.test.acceptance.tests.studio.base_studio_test import StudioCourseTest
|
||||
|
||||
|
||||
@attr(shard=2)
|
||||
@attr(shard=22)
|
||||
class VideoLicenseTest(StudioCourseTest):
|
||||
"""
|
||||
Tests for video module-level licensing (that is, setting the license,
|
||||
|
||||
@@ -215,7 +215,7 @@ class VideoBaseTest(UniqueCourseTest):
|
||||
self.video.wait_for_video_player_render()
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
@attr(shard=13)
|
||||
@ddt
|
||||
class YouTubeVideoTest(VideoBaseTest):
|
||||
""" Test YouTube Video Player """
|
||||
@@ -871,7 +871,7 @@ class YouTubeVideoTest(VideoBaseTest):
|
||||
execute_video_steps(tab1_video_names)
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
@attr(shard=13)
|
||||
class YouTubeHtml5VideoTest(VideoBaseTest):
|
||||
""" Test YouTube HTML5 Video Player """
|
||||
|
||||
@@ -889,7 +889,7 @@ class YouTubeHtml5VideoTest(VideoBaseTest):
|
||||
self.assertTrue(self.video.is_video_rendered('youtube'))
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
@attr(shard=19)
|
||||
class Html5VideoTest(VideoBaseTest):
|
||||
""" Test HTML5 Video Player """
|
||||
|
||||
@@ -1074,7 +1074,7 @@ class Html5VideoTest(VideoBaseTest):
|
||||
self.assertTrue(all([source in HTML5_SOURCES for source in self.video.sources]))
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
@attr(shard=13)
|
||||
class YouTubeQualityTest(VideoBaseTest):
|
||||
""" Test YouTube Video Quality Button """
|
||||
|
||||
@@ -1157,7 +1157,7 @@ class LMSVideoModuleA11yTest(VideoBaseTest):
|
||||
self.video.a11y_audit.check_for_accessibility_errors()
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
@attr(shard=11)
|
||||
class VideoPlayOrderTest(VideoBaseTest):
|
||||
"""
|
||||
Test video play order with multiple videos
|
||||
@@ -1201,7 +1201,7 @@ class VideoPlayOrderTest(VideoBaseTest):
|
||||
self.assertTrue(self.video.is_video_rendered('hls'))
|
||||
|
||||
|
||||
@attr(shard=4)
|
||||
@attr(shard=11)
|
||||
class HLSVideoTest(VideoBaseTest):
|
||||
"""
|
||||
Tests related to HLS video
|
||||
|
||||
@@ -6,6 +6,7 @@ from common.test.acceptance.tests.video.test_video_module import VideoBaseTest
|
||||
|
||||
class VideoTimesTest(VideoBaseTest):
|
||||
""" Test Video Player Times """
|
||||
shard = 21
|
||||
|
||||
def test_video_start_time(self):
|
||||
"""
|
||||
|
||||
@@ -14,6 +14,7 @@ class CrowdsourcehinterProblemTest(UniqueCourseTest):
|
||||
"""
|
||||
Test scenario for the hinter.
|
||||
"""
|
||||
shard = 21
|
||||
USERNAME = "STAFF_TESTER"
|
||||
EMAIL = "johndoe@example.com"
|
||||
|
||||
|
||||
@@ -205,11 +205,11 @@ case "$TEST_SUITE" in
|
||||
$TOX paver test_bokchoy $PAVER_ARGS
|
||||
;;
|
||||
|
||||
[1-9]|10)
|
||||
[1-9]|1[0-9]|2[0-1])
|
||||
$TOX paver test_bokchoy --eval-attr="shard==$SHARD" $PAVER_ARGS
|
||||
;;
|
||||
|
||||
11|"noshard")
|
||||
22|"noshard")
|
||||
$TOX paver test_bokchoy --eval-attr='not shard and not a11y' $PAVER_ARGS
|
||||
;;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user