def test_normalize_one_evaluation(self):
     clustering_info = {
                        "clustering1":{
                                       "type":"algorithm2",
                                       "clustering":"clustering2",
                                       "parameters":{},
                                       "evaluation":{
                                                     "myeval":0.5,
                                                     "myothereval":1.0
                                                    }
                         },
                        "clustering2":{
                                       "type":"algorithm1",
                                       "clustering":"clustering1",
                                       "parameters":{},
                                       "evaluation":{
                                                     "myeval":-0.5,
                                                     "myothereval":2.0
                                                     }
                         },
                        "clustering3":{
                                       "type":"algorithm1",
                                       "clustering":"clustering3",
                                       "parameters":{},
                                       "evaluation":{
                                                     "myeval":0.2,
                                                     "myothereval":0.0
                                                     }
                         }
     }
     values_for_myeval = BestClusteringSelector.get_values_for_evaluation_type("myeval", clustering_info)
     self.assertDictEqual(values_for_myeval, {'clustering1': 0.5, 'clustering3': 0.2, 'clustering2': -0.5})
     BestClusteringSelector.normalize_one_evaluation_type("myeval", clustering_info)
     values_for_myeval = BestClusteringSelector.get_values_for_evaluation_type("Normalized_myeval", clustering_info)
     self.assertDictEqual( values_for_myeval, {'clustering1': 1.0, 'clustering3': 0.7, 'clustering2': 0.0})
 def test_normalize_one_evaluation(self):
     clustering_info = {
         "clustering1": {
             "type": "algorithm2",
             "clustering": "clustering2",
             "parameters": {},
             "evaluation": {
                 "myeval": 0.5,
                 "myothereval": 1.0
             }
         },
         "clustering2": {
             "type": "algorithm1",
             "clustering": "clustering1",
             "parameters": {},
             "evaluation": {
                 "myeval": -0.5,
                 "myothereval": 2.0
             }
         },
         "clustering3": {
             "type": "algorithm1",
             "clustering": "clustering3",
             "parameters": {},
             "evaluation": {
                 "myeval": 0.2,
                 "myothereval": 0.0
             }
         }
     }
     values_for_myeval = BestClusteringSelector.get_values_for_evaluation_type(
         "myeval", clustering_info)
     self.assertDictEqual(values_for_myeval, {
         'clustering1': 0.5,
         'clustering3': 0.2,
         'clustering2': -0.5
     })
     BestClusteringSelector.normalize_one_evaluation_type(
         "myeval", clustering_info)
     values_for_myeval = BestClusteringSelector.get_values_for_evaluation_type(
         "Normalized_myeval", clustering_info)
     self.assertDictEqual(values_for_myeval, {
         'clustering1': 1.0,
         'clustering3': 0.7,
         'clustering2': 0.0
     })