class TestTournamentSelector(TestSelectorCommon): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.tournament_size = 3 tournament_selector_configuration = EvolutionTournamentSelectorConfiguration() self.configuration.selectors.append(tournament_selector_configuration) tournament_selector_configuration.tournament_size = self.tournament_size self.sut = TournamentSelector() def test_tournament_selection_should_work(self): # Given: self.rule_population_mock.get_random_rules.return_value = [ self.expected_rule, self.rule_2, self.rule_3] # When: selected_rule = self.sut.select( self.service_mock, self.grammar_statistics_mock, self.rule_population_mock) # Then: assert_that(selected_rule, is_(equal_to(self.expected_rule))) self.rule_population_mock.get_random_rules.assert_called_once_with( self.randomizer_mock, False, self.tournament_size) self.fitness_mock.get_keyfunc_getter.assert_called_once_with(self.grammar_statistics_mock)
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.tournament_size = 3 tournament_selector_configuration = EvolutionTournamentSelectorConfiguration() self.configuration.selectors.append(tournament_selector_configuration) tournament_selector_configuration.tournament_size = self.tournament_size self.sut = TournamentSelector()