def test_adapt(self):
        training_manager = TrainingManager(self.models)
        # with self.assertRaises(SystemExit) as cm:
        #     training_manager.adapt()

        # self.assertEqual(cm.exception.code, 0)
        self.assertEqual(training_manager.adapt(), 0) 
    def test_adapt_insufficient(self):
        ## TODO (not prioritary) Simulate scenario where there is no capacity and then it is released (maybe use a file to control the state)
        training_manager = TrainingManager(self.models_insufficient)

        # with self.assertRaises(SystemExit) as cm:
        #     training_manager.adapt()

        # self.assertEqual(cm.exception.code, 0)   

        self.assertEqual(training_manager.adapt(), 0) 
 def test_priority(self):
     training_manager = TrainingManager(self.models, self.user_constraints)
     self.assertEqual(len(training_manager.models), 5)
 def test_priority(self):
     #TODO actually verify the priorities, test with constraints
     training_manager = TrainingManager(self.models, self.user_constraints)
     self.assertEqual(len(training_manager.models), 3)