Package SmootLight :: Package tests :: Module TestSwitchBehavior
[hide private]
[frames] | no frames]

Source Code for Module SmootLight.tests.TestSwitchBehavior

 1  import unittest 
 2  import util.ComponentRegistry as compReg 
 3   
 4  from behaviors.SwitchBehavior import SwitchBehavior 
 5  from behaviors.EchoBehavior import EchoBehavior 
 6  from behaviors.DebugBehavior import DebugBehavior 
 7   
8 -class TestSwitchBehavior(unittest.TestCase):
9 - def setUp(self):
10 compReg.initRegistry() 11 12 # add a test registry 13 self.behavior1 = EchoBehavior({'Id': 'behavior1'}) 14 self.behavior2 = DebugBehavior({'Id': 'behavior2'}) 15 compReg.registerComponent(self.behavior1) 16 compReg.registerComponent(self.behavior2) 17 18 self.switchBehavior = SwitchBehavior({'Id': 'switch', 'PrefixToBehavior': '{"@": "behavior1", "#": "behavior2"}', 'DefaultBehavior': 'behavior1'}) 19 compReg.registerComponent(self.switchBehavior)
20
21 - def tearDown(self):
22 pass
23
25 inputs = [{'Data': '@something', 'Location': 'someloc'}] 26 returned = self.switchBehavior.processResponse(inputs, []) 27 assert returned[0][0]['Location'] == 'someloc'
28
30 inputs = [{'Data': '#something'}] 31 returned = self.switchBehavior.processResponse(inputs, []) 32 assert returned[0] == []
33
34 - def test_default_behavior(self):
35 inputs = [{'Data': 'something', 'Location': 'someloc'}] 36 returned = self.switchBehavior.processResponse(inputs, []) 37 assert returned[0][0]['Location'] == 'someloc'
38 39 40 if __name__ == '__main__': 41 unittest.main() 42