|
|
|
@ -40,12 +40,17 @@ import org.jeasy.rules.api.RuleListener;
|
|
|
|
|
import org.jeasy.rules.api.RulesEngineListener;
|
|
|
|
|
import org.junit.After;
|
|
|
|
|
import org.junit.Before;
|
|
|
|
|
import org.junit.Rule;
|
|
|
|
|
import org.junit.Test;
|
|
|
|
|
import org.junit.rules.ExpectedException;
|
|
|
|
|
import org.mockito.InOrder;
|
|
|
|
|
import org.mockito.Mock;
|
|
|
|
|
|
|
|
|
|
public class DefaultRulesEngineTest extends AbstractTest {
|
|
|
|
|
|
|
|
|
|
@Rule
|
|
|
|
|
public ExpectedException expectedException = ExpectedException.none();
|
|
|
|
|
|
|
|
|
|
@Mock
|
|
|
|
|
private RuleListener ruleListener;
|
|
|
|
|
|
|
|
|
@ -225,6 +230,21 @@ public class DefaultRulesEngineTest extends AbstractTest {
|
|
|
|
|
assertThat(ruleListeners).contains(ruleListener);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void getRuleListenersShouldReturnAnUnmodifiableList() {
|
|
|
|
|
// Given
|
|
|
|
|
expectedException.expect(UnsupportedOperationException.class);
|
|
|
|
|
DefaultRulesEngine rulesEngine = new DefaultRulesEngine();
|
|
|
|
|
rulesEngine.registerRuleListener(ruleListener);
|
|
|
|
|
|
|
|
|
|
// When
|
|
|
|
|
List<RuleListener> ruleListeners = rulesEngine.getRuleListeners();
|
|
|
|
|
ruleListeners.clear();
|
|
|
|
|
|
|
|
|
|
// Then
|
|
|
|
|
// expected exception
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testGetRulesEngineListeners() throws Exception {
|
|
|
|
|
// Given
|
|
|
|
@ -238,6 +258,21 @@ public class DefaultRulesEngineTest extends AbstractTest {
|
|
|
|
|
assertThat(rulesEngineListeners).contains(rulesEngineListener);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void getRulesEngineListenersShouldReturnAnUnmodifiableList() {
|
|
|
|
|
// Given
|
|
|
|
|
expectedException.expect(UnsupportedOperationException.class);
|
|
|
|
|
DefaultRulesEngine rulesEngine = new DefaultRulesEngine();
|
|
|
|
|
rulesEngine.registerRulesEngineListener(rulesEngineListener);
|
|
|
|
|
|
|
|
|
|
// When
|
|
|
|
|
List<RulesEngineListener> rulesEngineListeners = rulesEngine.getRulesEngineListeners();
|
|
|
|
|
rulesEngineListeners.clear();
|
|
|
|
|
|
|
|
|
|
// Then
|
|
|
|
|
// excepted exception
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@After
|
|
|
|
|
public void clearRules() {
|
|
|
|
|
rules.clear();
|
|
|
|
|