diff --git a/common/lib/xmodule/xmodule/templates/videoalpha/default.yaml b/common/lib/xmodule/xmodule/templates/videoalpha/default.yaml index 69ed22cc1e..dba8bbd0b4 100644 --- a/common/lib/xmodule/xmodule/templates/videoalpha/default.yaml +++ b/common/lib/xmodule/xmodule/templates/videoalpha/default.yaml @@ -1,7 +1,11 @@ --- metadata: - display_name: default - data_dir: a_made_up_name + display_name: Video Alpha 1 + version: 1 data: | - + + + + + children: [] diff --git a/common/lib/xmodule/xmodule/tests/test_logic.py b/common/lib/xmodule/xmodule/tests/test_logic.py index 6cd46a26ee..e60af63921 100644 --- a/common/lib/xmodule/xmodule/tests/test_logic.py +++ b/common/lib/xmodule/xmodule/tests/test_logic.py @@ -4,10 +4,12 @@ import json import unittest +from lxml import etree + from xmodule.poll_module import PollDescriptor from xmodule.conditional_module import ConditionalDescriptor from xmodule.word_cloud_module import WordCloudDescriptor - +from xmodule.videoalpha_module import VideoAlphaDescriptor class PostData: """Class which emulate postdata.""" @@ -117,3 +119,33 @@ class WordCloudModuleTest(LogicTest): ) self.assertEqual(100.0, sum(i['percent'] for i in response['top_words']) ) + + +class VideoAlphaModuleTest(LogicTest): + descriptor_class = VideoAlphaDescriptor + + raw_model_data = { + 'data': '' + } + + def test_get_timeframe_no_parameters(self): + xmltree = etree.fromstring('test') + output = self.xmodule._get_timeframe(xmltree) + self.assertEqual(output, ('', '')) + + def test_get_timeframe_with_one_parameter(self): + xmltree = etree.fromstring( + 'test' + ) + output = self.xmodule._get_timeframe(xmltree) + self.assertEqual(output, (247, '')) + + def test_get_timeframe_with_two_parameters(self): + xmltree = etree.fromstring( + '''test''' + ) + output = self.xmodule._get_timeframe(xmltree) + self.assertEqual(output, (247, 47079)) diff --git a/common/lib/xmodule/xmodule/videoalpha_module.py b/common/lib/xmodule/xmodule/videoalpha_module.py index 6754f8f664..16230480a7 100644 --- a/common/lib/xmodule/xmodule/videoalpha_module.py +++ b/common/lib/xmodule/xmodule/videoalpha_module.py @@ -93,7 +93,7 @@ class VideoAlphaModule(VideoAlphaFields, XModule): return result def _get_timeframe(self, xmltree): - """ Converts 'from' and 'to' parameters in video tag to seconds. + """ Converts 'start_time' and 'end_time' parameters in video tag to seconds. If there are no parameters, returns empty string. """ def parse_time(s): @@ -103,11 +103,13 @@ class VideoAlphaModule(VideoAlphaFields, XModule): return '' else: x = time.strptime(s, '%H:%M:%S') - return datetime.timedelta(hours=x.tm_hour, - minutes=x.tm_min, - seconds=x.tm_sec).total_seconds() + return datetime.timedelta( + hours=x.tm_hour, + minutes=x.tm_min, + seconds=x.tm_sec + ).total_seconds() - return parse_time(xmltree.get('from')), parse_time(xmltree.get('to')) + return parse_time(xmltree.get('start_time')), parse_time(xmltree.get('end_time')) def handle_ajax(self, dispatch, get): """Handle ajax calls to this video.