本文整理汇总了Python中common.test.acceptance.pages.studio.container.ContainerPage.edit方法的典型用法代码示例。如果您正苦于以下问题:Python ContainerPage.edit方法的具体用法?Python ContainerPage.edit怎么用?Python ContainerPage.edit使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类common.test.acceptance.pages.studio.container.ContainerPage
的用法示例。
在下文中一共展示了ContainerPage.edit方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_use_group_configuration
# 需要导入模块: from common.test.acceptance.pages.studio.container import ContainerPage [as 别名]
# 或者: from common.test.acceptance.pages.studio.container.ContainerPage import edit [as 别名]
def test_use_group_configuration(self):
"""
Scenario: Ensure that the group configuration can be used by split_module correctly
Given I have a course without group configurations
When I create new group configuration
And I set new name and add a new group, save the group configuration
And I go to the unit page in Studio
And I add new advanced module "Content Experiment"
When I assign created group configuration to the module
Then I see the module has correct groups
"""
self.page.visit()
# Create new group configuration
self.page.create_experiment_group_configuration()
config = self.page.experiment_group_configurations[0]
config.name = "New Group Configuration Name"
# Add new group
config.add_group()
config.groups[2].name = "New group"
# Save the configuration
config.save()
split_test = self._add_split_test_to_vertical(number=0)
container = ContainerPage(self.browser, split_test.locator)
container.visit()
container.edit()
component_editor = ComponentEditorView(self.browser, container.locator)
component_editor.set_select_value_and_save('Group Configuration', 'New Group Configuration Name')
self.verify_groups(container, ['Group A', 'Group B', 'New group'], [])
示例2: DiscussionComponentTest
# 需要导入模块: from common.test.acceptance.pages.studio.container import ContainerPage [as 别名]
# 或者: from common.test.acceptance.pages.studio.container.ContainerPage import edit [as 别名]
class DiscussionComponentTest(ContainerBase):
"""
Feature: CMS.Component Adding
As a course author, I want to be able to add and edit Discussion component
"""
def setUp(self, is_staff=True):
"""
Create a course with a section, subsection, and unit to which to add the component.
"""
super(DiscussionComponentTest, self).setUp(is_staff=is_staff)
self.component = 'discussion'
self.unit = self.go_to_unit_page()
self.container_page = ContainerPage(self.browser, None)
# Add Discussion component
add_component(self.container_page, 'discussion', self.component)
self.component = self.unit.xblocks[1]
self.container_page.edit()
self.discussion_editor = DiscussionComponentEditor(self.browser, self.component.locator)
def populate_course_fixture(self, course_fixture):
"""
Adds a course fixture
"""
course_fixture.add_children(
XBlockFixtureDesc('chapter', 'Test Section').add_children(
XBlockFixtureDesc('sequential', 'Test Subsection').add_children(
XBlockFixtureDesc('vertical', 'Test Unit')
)
)
)
def test_view_discussion_component_metadata(self):
"""
Scenario: Staff user can view discussion component metadata
Given I am in Studio and I have added a Discussion component
When I edit Discussion component
Then I see three settings and their expected values
"""
field_values = self.discussion_editor.edit_discussion_field_values
self.assertEqual(
field_values,
['Discussion', 'Week 1', 'Topic-Level Student-Visible Label']
)
def test_edit_discussion_component(self):
"""
Scenario: Staff user can modify display name
Given I am in Studio and I have added a Discussion component
When I open Discussion component's edit dialogue
Then I can modify the display name
And My display name change is persisted on save
"""
field_name = 'Display Name'
new_name = 'Test Name'
self.discussion_editor.set_field_val(field_name, new_name)
self.discussion_editor.save()
component_name = self.unit.xblock_titles[0]
self.assertEqual(component_name, new_name)
示例3: test_container_page_active_verticals_names_are_synced
# 需要导入模块: from common.test.acceptance.pages.studio.container import ContainerPage [as 别名]
# 或者: from common.test.acceptance.pages.studio.container.ContainerPage import edit [as 别名]
def test_container_page_active_verticals_names_are_synced(self):
"""
Scenario: Ensure that the Content Experiment display synced vertical names and correct groups.
Given I have a course with group configuration
And I go to the Group Configuration page in Studio
And I edit the name of the group configuration, add new group and remove old one
And I change the name for the group "New group" to "Second Group"
And I go to the Container page in Studio
And I edit the Content Experiment
Then I see the group configuration name is changed in `Group Configuration` dropdown
And the group configuration name is changed on container page
And I see the module has 2 active groups and one inactive
And I see "Add missing groups" link exists
When I click on "Add missing groups" link
The I see the module has 3 active groups and one inactive
"""
self.course_fixture._update_xblock(self.course_fixture._course_location, {
"metadata": {
u"user_partitions": [
create_user_partition_json(
0,
'Name of the Group Configuration',
'Description of the group configuration.',
[Group("0", 'Group A'), Group("1", 'Group B'), Group("2", 'Group C')]
),
],
},
})
# Add split test to vertical and assign newly created group configuration to it
split_test = self._add_split_test_to_vertical(number=0, group_configuration_metadata={'user_partition_id': 0})
self.page.visit()
config = self.page.experiment_group_configurations[0]
config.edit()
config.name = "Second Group Configuration Name"
# `Group C` -> `Second Group`
config.groups[2].name = "Second Group"
# Add new group
config.add_group() # Group D
# Remove Group A
config.groups[0].remove()
# Save the configuration
config.save()
container = ContainerPage(self.browser, split_test.locator)
container.visit()
container.edit()
component_editor = ComponentEditorView(self.browser, container.locator)
self.assertEqual(
"Second Group Configuration Name",
component_editor.get_selected_option_text('Group Configuration')
)
component_editor.cancel()
self.assertIn(
"Second Group Configuration Name",
container.get_xblock_information_message()
)
self.verify_groups(
container, ['Group B', 'Second Group'], ['Group ID 0'],
verify_missing_groups_not_present=False
)
# Click the add button and verify that the groups were added on the page
container.add_missing_groups()
self.verify_groups(container, ['Group B', 'Second Group', 'Group D'], ['Group ID 0'])
示例4: ProblemComponentEditor
# 需要导入模块: from common.test.acceptance.pages.studio.container import ContainerPage [as 别名]
# 或者: from common.test.acceptance.pages.studio.container.ContainerPage import edit [as 别名]
class ProblemComponentEditor(ContainerBase):
"""
Feature: CMS.Component Adding
As a course author, I want to be able to add and edit Problem
"""
def setUp(self, is_staff=True):
"""
Create a course with a section, subsection, and unit to which to add the component.
"""
super(ProblemComponentEditor, self).setUp(is_staff=is_staff)
self.component = 'Blank Common Problem'
self.unit = self.go_to_unit_page()
self.container_page = ContainerPage(self.browser, None)
# Add a Problem
add_component(self.container_page, 'problem', self.component)
self.component = self.unit.xblocks[1]
self.container_page.edit()
self.problem_editor = ProblemXBlockEditorView(self.browser, self.component.locator)
def populate_course_fixture(self, course_fixture):
"""
Adds a course fixture
"""
course_fixture.add_children(
XBlockFixtureDesc('chapter', 'Test Section').add_children(
XBlockFixtureDesc('sequential', 'Test Subsection').add_children(
XBlockFixtureDesc('vertical', 'Test Unit')
)
)
)
def test_user_can_view_metadata(self):
"""
Scenario: User can view metadata
Given I have created a Blank Common Problem
When I edit and select Settings
Then I see the advanced settings and their expected values
And Edit High Level Source is not visible
"""
expected_default_settings = {
'Display Name': u'Blank Common Problem',
'Matlab API key': u'',
'Maximum Attempts': u'',
'Problem Weight': u'',
'Randomization': u'Never',
'Show Answer': u'Finished',
'Show Answer: Number of Attempts': u'0',
'Show Reset Button': u'False',
'Timer Between Attempts': u'0'
}
self.problem_editor.open_settings()
settings = self.problem_editor.get_settings()
self.assertEqual(expected_default_settings, settings)
self.assertFalse(self.problem_editor.is_latex_compiler_present())
def test_user_can_modify_string_values(self):
"""
Given I have created a Blank Common Problem
When I edit and select Settings
Then I can modify the display name
And my display name change is persisted on save
"""
self.problem_editor.open_settings()
self.problem_editor.set_field_val('Display Name', 'New Name')
self.problem_editor.save()
component_name = self.unit.xblock_titles[0]
self.assertEqual(component_name, 'New Name', 'Component Name is not same as the new name')
def test_user_can_specify_special_characters(self):
"""
Scenario: User can specify special characters in String values
Given I have created a Blank Common Problem
When I edit and select Settings
Then I can specify special characters in the display name
And my special characters are persisted on save
"""
self.problem_editor.open_settings()
self.problem_editor.set_field_val('Display Name', '&&&')
self.problem_editor.save()
component_name = self.unit.xblock_titles[0]
self.assertEqual(component_name, '&&&', 'Component Name is not same as the new name')
def test_user_can_revert_display_name_to_unset(self):
"""
Scenario: User can revert display name to unset
Given I have created a Blank Common Problem
When I edit and select Settings
Then I can revert the display name to unset
And my display name is unset on save
"""
self.problem_editor.open_settings()
self.problem_editor.set_field_val('Display Name', 'New Name')
self.problem_editor.save()
# reopen settings
self.container_page.edit()
self.problem_editor.open_settings()
self.problem_editor.revert_setting(display_name=True)
#.........这里部分代码省略.........
示例5: HTMLComponentEditorTests
# 需要导入模块: from common.test.acceptance.pages.studio.container import ContainerPage [as 别名]
# 或者: from common.test.acceptance.pages.studio.container.ContainerPage import edit [as 别名]
class HTMLComponentEditorTests(ContainerBase):
"""
Feature: CMS.Component Adding
As a course author, I want to be able to add and edit HTML component
"""
shard = 18
def setUp(self, is_staff=True):
"""
Create a course with a section, subsection, and unit to which to add the component.
"""
super(HTMLComponentEditorTests, self).setUp(is_staff=is_staff)
self.unit = self.go_to_unit_page()
self.container_page = ContainerPage(self.browser, None)
self.xblock_wrapper = XBlockWrapper(self.browser, None)
self.component = None
self.html_editor = None
self.iframe = None
def populate_course_fixture(self, course_fixture):
"""
Adds a course fixture
"""
course_fixture.add_children(
XBlockFixtureDesc('chapter', 'Test Section').add_children(
XBlockFixtureDesc('sequential', 'Test Subsection').add_children(
XBlockFixtureDesc('vertical', 'Test Unit')
)
)
)
def _add_content(self, content):
"""
Set and save content in editor and assert its presence in container page's html
Args:
content(str): Verifiable content
"""
self.html_editor.set_raw_content(content)
self.html_editor.save_content()
self.container_page.wait_for_page()
def _add_component(self, sub_type):
"""
Add sub-type of HTML component in studio
Args:
sub_type(str): Sub-type of HTML component
"""
add_component(self.container_page, 'html', sub_type)
self.component = self.unit.xblocks[1]
self.html_editor = HtmlXBlockEditorView(self.browser, self.component.locator)
self.iframe = HTMLEditorIframe(self.browser, self.component.locator)
def test_user_can_view_metadata(self):
"""
Scenario: User can view metadata
Given I have created a Blank HTML Page
And I edit and select Settings
Then I see the HTML component settings
"""
# Add HTML Text type component
self._add_component('Text')
self.container_page.edit()
self.html_editor.open_settings_tab()
display_name_value = self.html_editor.get_default_settings()[0]
display_name_key = self.html_editor.keys[0]
self.assertEqual(
['Display Name', 'Text'],
[display_name_key, display_name_value],
"Settings not found"
)
editor_value = self.html_editor.get_default_settings()[1]
editor_key = self.html_editor.keys[1]
self.assertEqual(
['Editor', 'Visual'],
[editor_key, editor_value],
"Settings not found"
)
def test_user_can_modify_display_name(self):
"""
Scenario: User can modify display name
Given I have created a Blank HTML Page
And I edit and select Settings
Then I can modify the display name
And my display name change is persisted on save
"""
# Add HTML Text type component
self._add_component('Text')
self.container_page.edit()
self.html_editor.open_settings_tab()
self.html_editor.set_field_val('Display Name', 'New Name')
self.html_editor.save_settings()
component_name = self.unit.xblock_titles[0]
self.assertEqual(component_name, 'New Name', "Component name is not as edited")
def test_link_plugin_sets_url_correctly(self):
"""
#.........这里部分代码省略.........