Commit 06001c8c by Vasyl Nakvasiuk

fix test_logic

parent bb69e9fa
......@@ -3,20 +3,23 @@
import json
import unittest
from xmodule.poll_module import PollModule
from xmodule.conditional_module import ConditionalModule
from xmodule.poll_module import PollDescriptor
from xmodule.conditional_module import ConditionalDescriptor
class LogicTest(unittest.TestCase):
"""Base class for testing xmodule logic."""
xmodule_class = None
descriptor_class = None
raw_model_data = {}
def setUp(self):
class EmptyClass: pass
self.system = None
self.location = None
self.descriptor = None
self.descriptor = EmptyClass()
self.xmodule_class = self.descriptor_class.module_class
self.xmodule = self.xmodule_class(self.system, self.location,
self.descriptor, self.raw_model_data)
......@@ -25,7 +28,7 @@ class LogicTest(unittest.TestCase):
class PollModuleTest(LogicTest):
xmodule_class = PollModule
descriptor_class = PollDescriptor
raw_model_data = {
'poll_answers': {'Yes': 1, 'Dont_know': 0, 'No': 0},
'voted': False,
......@@ -50,16 +53,14 @@ class PollModuleTest(LogicTest):
class ConditionalModuleTest(LogicTest):
xmodule_class = ConditionalModule
raw_model_data = {
'contents': 'Some content'
}
descriptor_class = ConditionalDescriptor
def test_ajax_request(self):
# Mock is_condition_satisfied
self.xmodule.is_condition_satisfied = lambda: True
setattr(self.xmodule.descriptor, 'get_children', lambda: [])
response = self.ajax_request('No', {})
html = response['html']
self.assertEqual(html, 'Some content')
self.assertEqual(html, [])
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