Exemple #1
0
    def test_init__invalid_penalty_function_type(self, example_decision_variables, example_constraints,
                                                 invalid_penalty_function, example_objective_function,
                                                 optimization_type):
        """
        Test that during initialization of 'OptimizationProblem' will be raised TypeError if one of parameters
        has invalid type.

        :param example_decision_variables: Example value of 'decision_variables' param.
        :param example_constraints: Example value of 'constraints' param.
        :param invalid_penalty_function: Value of 'penalty_function' param of invalid type.
        :param example_objective_function: Example value of 'objective_function' param.
        :param optimization_type: Example value of 'optimization_type' param.
        """
        with pytest.raises(TypeError):
            OptimizationProblem.__init__(self=self.mock_optimization_problem_object,
                                         decision_variables=example_decision_variables,
                                         constraints=example_constraints, penalty_function=invalid_penalty_function,
                                         objective_function=example_objective_function,
                                         optimization_type=optimization_type)
Exemple #2
0
    def test_init__invalid_decision_variables_data_1(self, invalid_decision_variables__keys_not_str,
                                                     example_constraints, example_penalty_function,
                                                     example_objective_function, optimization_type):
        """
        Test that during initialization of 'OptimizationProblem' will be raised ValueError if one of parameters
        contains valid data.

        :param invalid_decision_variables__keys_not_str: Invalid value of 'decision_variables' param (keys are not str type).
        :param example_constraints: Example value of 'constraints' param.
        :param example_penalty_function: Example value of 'penalty_function' param.
        :param example_objective_function: Example value of 'objective_function' param.
        :param optimization_type: Example value of 'optimization_type' param.
        """
        with pytest.raises(ValueError):
            OptimizationProblem.__init__(self=self.mock_optimization_problem_object,
                                         decision_variables=invalid_decision_variables__keys_not_str,
                                         constraints=example_constraints, penalty_function=example_penalty_function,
                                         objective_function=example_objective_function,
                                         optimization_type=optimization_type)
Exemple #3
0
    def test_init__valid_input(self, example_decision_variables, example_constraints, example_penalty_function,
                               example_objective_function, optimization_type):
        """
        Test for initialization of 'OptimizationProblem' with valid parameters values.

        :param example_decision_variables: Example value of 'decision_variables' param.
        :param example_constraints: Example value of 'constraints' param.
        :param example_penalty_function: Example value of 'penalty_function' param.
        :param example_objective_function: Example value of 'objective_function' param.
        :param optimization_type: Example value of 'optimization_type' param.
        """
        OptimizationProblem.__init__(self=self.mock_optimization_problem_object,
                                     decision_variables=example_decision_variables, constraints=example_constraints,
                                     penalty_function=example_penalty_function,
                                     objective_function=example_objective_function, optimization_type=optimization_type)
        assert self.mock_optimization_problem_object.decision_variables == example_decision_variables
        assert self.mock_optimization_problem_object.constraints == example_constraints
        assert self.mock_optimization_problem_object.penalty_function == example_penalty_function
        assert self.mock_optimization_problem_object.objective_function == example_objective_function
        assert isinstance(self.mock_optimization_problem_object.optimization_type, OptimizationType)
Exemple #4
0
 def test_get_log_data(self):
     """
     Tests that 'get_log_data' method calls 'log_function_code' function and returns dictionary with certain keys.
     """
     log_data = OptimizationProblem.get_log_data(self=self.mock_optimization_problem_object)
     assert isinstance(log_data, dict)
     assert "optimization_type" in log_data
     assert "decision_variables" in log_data
     assert "constraints" in log_data
     assert "penalty_function" in log_data
     assert "objective_function" in log_data
     self.mock_log_function_code.assert_called()