diff options
author | dxiao <dxiao@mit.edu> | 2011-02-20 13:27:26 -0500 |
---|---|---|
committer | dxiao <dxiao@mit.edu> | 2011-02-20 13:27:26 -0500 |
commit | 9ad7728d6303f5ee1be1f105b87cea872d84a5c4 (patch) | |
tree | 8ad677d209759ee8dfa445363cd97c681badd2b5 /tests/TestSwitchBehavior.py | |
parent | 037a4faa064cbd4637a78f2742afa746bbc8aaad (diff) | |
parent | 58ec94a477f5edef0bf75a60252af96adec34d8d (diff) |
Merge branch 'master' into conner5
Diffstat (limited to 'tests/TestSwitchBehavior.py')
-rw-r--r-- | tests/TestSwitchBehavior.py | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/TestSwitchBehavior.py b/tests/TestSwitchBehavior.py new file mode 100644 index 0000000..774dbbc --- /dev/null +++ b/tests/TestSwitchBehavior.py @@ -0,0 +1,41 @@ +import unittest +import util.ComponentRegistry as compReg + +from behaviors.SwitchBehavior import SwitchBehavior +from behaviors.EchoBehavior import EchoBehavior +from behaviors.DebugBehavior import DebugBehavior + +class TestSwitchBehavior(unittest.TestCase): + def setUp(self): + compReg.initRegistry() + + # add a test registry + self.behavior1 = EchoBehavior({'Id': 'behavior1'}) + self.behavior2 = DebugBehavior({'Id': 'behavior2'}) + compReg.registerComponent(self.behavior1) + compReg.registerComponent(self.behavior2) + + self.switchBehavior = SwitchBehavior({'Id': 'switch', 'PrefixToBehavior': '{"@": "behavior1", "#": "behavior2"}', 'DefaultBehavior': 'behavior1'}) + compReg.registerComponent(self.switchBehavior) + + def tearDown(self): + pass + + def test_switch_to_behavior1(self): + inputs = [{'Data': '@something', 'Location': 'someloc'}] + returned = self.switchBehavior.processResponse(inputs, []) + assert returned[0][0]['Location'] == 'someloc' + + def test_switch_to_behavior2(self): + inputs = [{'Data': '#something'}] + returned = self.switchBehavior.processResponse(inputs, []) + assert returned[0] == [] + + def test_default_behavior(self): + inputs = [{'Data': 'something', 'Location': 'someloc'}] + returned = self.switchBehavior.processResponse(inputs, []) + assert returned[0][0]['Location'] == 'someloc' + + +if __name__ == '__main__': + unittest.main() |