From fc7d8063d40db45c297144368666af26495ec075 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mariana=20M=C4=83r=C4=83=C8=99oiu?= Date: Fri, 16 Sep 2011 00:56:57 +0300 Subject: [PATCH] ppf/new: Add test module for top.py. Add test methods for EnhanceSwarmDescription. --- ppf/new/tests/test_top.py | 72 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 ppf/new/tests/test_top.py diff --git a/ppf/new/tests/test_top.py b/ppf/new/tests/test_top.py new file mode 100644 index 0000000..97091eb --- /dev/null +++ b/ppf/new/tests/test_top.py @@ -0,0 +1,72 @@ +""" +Test suite for top methods. Uses unittest module. + +2011, Mariana Marasoiu, mariana.marasoiu@gmail.com +""" + +import unittest +import os +import os.path +import datetime +import sys +import MySQLdb +import subprocess + +import config +import storage +import top + +class EnhanceSwarmDescriptionTest(unittest.TestCase): + + """Test suite for enhance_swarm_description method in top.py.""" + + # Class specific variables. Initialized in setUp, used throughout tests. + config_file = "config.sample.ini" + access_file = "access.sample.ini" + sd = None + sw = None + expected_swarm_id = 0 + expected_session_ids = [] + + def get_swarm_id(self): + sections = self.sd.data.sections() + session = sections[0] + session_items = dict(self.sd.data.items(session)) + return int(session_items['swarm_id']) + + def get_session_ids(self): + session_names = self.sd.data.sections() + session_names.remove('swarm') + session_ids = [] + for session in session_names: + session_items = dict(self.sd.data.items(session)) + session_ids.append(int(session_items['client_session_id'])) + return session_ids + + def setUp(self): + # Initialize SwarmDescription and AccessConfig instances + config_file_path = os.path.join(os.path.dirname(__file__), + self.config_file) + access_file_path = os.path.join(os.path.dirname(__file__), + self.access_file) + self.sd = config.SwarmDescription() + self.sd.load(config_file_path) + self.ac = config.AccessConfig() + self.ac.load(access_file_path) + self.sw = self.ac.get_swarm_writer() + self.expected_session_ids = [3, 4, 5, 6] + self.expected_swarm_id = 3 + + def test_correct_swarm_id(self): + top.enhance_swarm_description(self.sd, self.sw) + swarm_id = self.get_swarm_id() + self.assertEqual(swarm_id, self.expected_swarm_id) + + def test_correct_session_id(self): + top.enhance_swarm_description(self.sd, self.sw) + session_ids = self.get_session_ids() + self.assertEqual(session_ids, self.expected_session_ids) + + +if __name__ == "__main__": + unittest.main() -- 2.20.1