Merge pull request #8536 from edx/diana/handle-hidden-tabs
Ensure that is_hidden does not affect equality checks.
This commit is contained in:
@@ -973,6 +973,24 @@ class CourseMetadataEditingTest(CourseTestCase):
|
||||
self.assertNotIn(peer_grading_tab, course.tabs)
|
||||
self.assertNotIn(notes_tab, course.tabs)
|
||||
|
||||
def mark_wiki_as_hidden(self, tabs):
|
||||
""" Mark the wiki tab as hidden. """
|
||||
for tab in tabs:
|
||||
if tab.type == 'wiki':
|
||||
tab['is_hidden'] = True
|
||||
return tabs
|
||||
|
||||
def test_advanced_components_munge_tabs_hidden_tabs(self):
|
||||
updated_tabs = self.mark_wiki_as_hidden(self.course.tabs)
|
||||
self.course.tabs = updated_tabs
|
||||
modulestore().update_item(self.course, self.user.id)
|
||||
self.client.ajax_post(self.course_setting_url, {
|
||||
ADVANCED_COMPONENT_POLICY_KEY: {"value": ["notes"]}
|
||||
})
|
||||
course = modulestore().get_course(self.course.id)
|
||||
notes_tab = {"type": "notes", "name": "My Notes"}
|
||||
self.assertIn(notes_tab, course.tabs)
|
||||
|
||||
|
||||
class CourseGraderUpdatesTest(CourseTestCase):
|
||||
"""
|
||||
|
||||
@@ -138,10 +138,8 @@ class CourseTab(object):
|
||||
# allow tabs without names; if a name is required, its presence was checked in the validator.
|
||||
name_is_eq = (other.get('name') is None or self.name == other['name'])
|
||||
|
||||
is_hidden_eq = self.is_hidden == other.get('is_hidden', False)
|
||||
|
||||
# only compare the persisted/serialized members: 'type' and 'name'
|
||||
return self.type == other.get('type') and name_is_eq and is_hidden_eq
|
||||
return self.type == other.get('type') and name_is_eq
|
||||
|
||||
def __ne__(self, other):
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user