'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'

def test_container_page_active_verticals_names_are_synced(self):

    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')])]}})
    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'
    config.groups[2].name = 'Second    Group'
    config.add_group()
    config.groups[0].remove()
    config.save()
    container = ContainerPage(self.browser, split_test.locator)
    container.visit()
    container.edit()
    component_editor = XBlockEditorView(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)
    container.add_missing_groups()
    self.verify_groups(container, ['Group    B', 'Second    Group', 'Group    D'], ['Group    ID    0'])
