class TestSimpleAddingRuleStrategy(TestAddingRuleStrategyCommon): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.sut = SimpleAddingRuleStrategy() def test_should_know_if_strategy_is_applicable(self): assert_that( self.sut.is_applicable(AddingRuleStrategyHint.expand_population), is_(True)) assert_that( self.sut.is_applicable(AddingRuleStrategyHint.control_population_size), is_(False)) assert_that( self.sut.is_applicable(AddingRuleStrategyHint.control_population_size_with_elitism), is_(False)) def test_should_be_able_to_apply_strategy(self): self.sut.apply(self.rule_supervisor_mock, self.statistics_mock, self.rule, self.rule_population_mock) self.rule_population_mock.add_rule.assert_called_once_with(self.rule, self.randomizer_mock) self.statistics_mock.on_added_new_rule.assert_called_once_with(self.rule)
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.sut = SimpleAddingRuleStrategy()