import unittest from pylot.core.pick.autopick import PickingParameters class TestPickingParameters(unittest.TestCase): def setUp(self): self.simple_dict = {'a': 3, 'b': 14} self.nested_dict = {'a': self.simple_dict, 'b': self.simple_dict} def assertParameterEquality(self, dic, instance): """Test wether all parameters given in dic are found in instance""" for key, value in dic.items(): self.assertEqual(value, getattr(instance, key)) def test_add_params_from_dict_simple(self): pickparam = PickingParameters() pickparam.add_params_from_dict(self.simple_dict) self.assertParameterEquality(self.simple_dict, pickparam) def test_add_params_from_dict_nested(self): pickparam = PickingParameters() pickparam.add_params_from_dict(self.nested_dict) self.assertParameterEquality(self.nested_dict, pickparam) def test_init(self): pickparam = PickingParameters(self.simple_dict) self.assertParameterEquality(self.simple_dict, pickparam) def test_dot_access(self): pickparam = PickingParameters(self.simple_dict) self.assertEqual(pickparam.a, self.simple_dict['a']) if __name__ == '__main__': unittest.main()