Commit 2c3aebf9 by Se Won Jang

Bugfix: Initialize new tabname to "Empty"

In Studio, when the course administrator creates a new tab, its name was being
initialized as null in the mongo database. This caused students in LMS to get a
server error when trying to access the course page, since LMS was trying to
process the null tabname for translation, etc. Now tabname is initialized as
'Empty', which is how it was being done in the frontend.

STUD-2000
parent adae7c6d
......@@ -429,6 +429,7 @@ def _create_item(request):
# if we add one then we need to also add it to the policy information (i.e. metadata)
# we should remove this once we can break this reference from the course to static tabs
if category == 'static_tab':
display_name = display_name or _("Empty") # Prevent name being None
course = store.get_course(dest_usage_key.course_key)
course.tabs.append(
StaticTab(
......
......@@ -248,6 +248,17 @@ class TestCreateItem(ItemTest):
obj = self.get_item_from_modulestore(usage_key)
self.assertEqual(obj.start, datetime(2030, 1, 1, tzinfo=UTC))
def test_static_tabs_initialization(self):
"""
Test that static tab display names are not being initialized as None.
"""
# Add a new static tab with no explicit name
resp = self.create_xblock(category='static_tab')
usage_key = self.response_usage_key(resp)
# Check that its name is not None
new_tab = self.get_item_from_modulestore(usage_key)
self.assertEquals(new_tab.display_name, 'Empty')
class TestDuplicateItem(ItemTest):
"""
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment