Ejemplo n.º 1
0
    def _update_fitness_values(self, fitness_function: ff.FitnessFunction,
                               new_value: ff.FitnessValues):
        """Update the fitness values for the given function."""
        assert (fitness_function in self._fitness_functions
                ), "Cannot update unknown fitness function."

        violations = new_value.validate()
        if len(violations) > 0:
            raise RuntimeError(", ".join(violations))
        self._current_values[fitness_function] = new_value
Ejemplo n.º 2
0
def test_compute_fitness_values(known_data_mock, executor_mock, trace_mock):
    tracer = MagicMock()
    tracer.get_known_data.return_value = known_data_mock
    executor_mock.tracer.return_value = tracer
    ff = BranchDistanceTestCaseFitnessFunction(executor_mock)
    indiv = MagicMock()
    with mock.patch.object(ff, "_run_test_case_chromosome") as run_suite_mock:
        result = ExecutionResult()
        result.execution_trace = trace_mock
        run_suite_mock.return_value = result
        assert ff.compute_fitness_values(indiv) == FitnessValues(0, 1)
        run_suite_mock.assert_called_with(indiv)
Ejemplo n.º 3
0
    def _update_fitness_values(self, fitness_function: ff.FitnessFunction,
                               new_value: ff.FitnessValues) -> None:
        """Update the fitness values for the given function.

        Args:
            fitness_function: The fitness function to update
            new_value: The new fitness values

        Raises:
            RuntimeError: in case the validation of the new value was not successful
        """
        assert (fitness_function in self._fitness_functions
                ), "Cannot update unknown fitness function."

        violations = new_value.validate()
        if len(violations) > 0:
            raise RuntimeError(", ".join(violations))
        self._fitness_values[fitness_function] = new_value