import unittest import alert_config_list class Mock_Alert_Config() : def __init__(self, id) : self.id = id class Test_Alert_Config_List(unittest.TestCase): def setUp(self) : self.was = alert_config_list.Alert_Config alert_config_list.Alert_Config = Mock_Alert_Config self.al = alert_config_list.Alert_Config_List() def tearDown(self) : alert_config_list.Alert_Config = self.was self.al = None def test_add(self) : self.al.add(Mock_Alert_Config("a")) self.assertEqual(len(self.al), 1) self.al.add([Mock_Alert_Config("a")]) self.assertEqual(len(self.al), 1) self.al.add([Mock_Alert_Config("b")]) self.assertEqual(len(self.al), 2) self.al.add(Mock_Alert_Config("c")) self.assertEqual(len(self.al), 3) other = alert_config_list.Alert_Config_List() other.add(Mock_Alert_Config("d")) self.al.add(other) self.assertEqual(len(self.al), 4) def test_compare(self) : self.al.add(Mock_Alert_Config("a")) self.al.add(Mock_Alert_Config("b")) self.al.add(Mock_Alert_Config("c")) new = alert_config_list.Alert_Config_List() new.add(Mock_Alert_Config("a")) new.add(Mock_Alert_Config("y")) new.add(Mock_Alert_Config("z")) added, removed, modified = self.al.compare(new) if not "y" in added or not "z" in added : self.fail("added is missing elements") if not "b" in removed or not "c" in removed : self.fail("removed is missing elements") if not "a" in modified : self.fail("modified is missing elements") if __name__ == "__main__" : unittest.main()