|
|
|
@ -26,6 +26,8 @@ package org.jeasy.rules.mvel;
|
|
|
|
|
import org.junit.Test;
|
|
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
|
import java.nio.file.Files;
|
|
|
|
|
import java.nio.file.Paths;
|
|
|
|
|
import java.util.Collections;
|
|
|
|
|
|
|
|
|
|
import static org.assertj.core.api.Assertions.assertThat;
|
|
|
|
@ -51,4 +53,22 @@ public class MVELRuleDefinitionReaderTest {
|
|
|
|
|
assertThat(adultRuleDefinition.getActions()).isEqualTo(Collections.singletonList("person.setAdult(true);"));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void testRuleDefinitionReadingFromString() throws Exception {
|
|
|
|
|
// given
|
|
|
|
|
String adultRuleDescriptor = new String(Files.readAllBytes(Paths.get("src/test/resources/adult-rule.yml")));
|
|
|
|
|
|
|
|
|
|
// when
|
|
|
|
|
MVELRuleDefinition adultRuleDefinition = ruleDefinitionReader.read(adultRuleDescriptor);
|
|
|
|
|
|
|
|
|
|
// then
|
|
|
|
|
assertThat(adultRuleDefinition).isNotNull();
|
|
|
|
|
assertThat(adultRuleDefinition.getName()).isEqualTo("adult rule");
|
|
|
|
|
assertThat(adultRuleDefinition.getDescription()).isEqualTo("when age is greater then 18, then mark as adult");
|
|
|
|
|
assertThat(adultRuleDefinition.getPriority()).isEqualTo(1);
|
|
|
|
|
assertThat(adultRuleDefinition.getCondition()).isEqualTo("person.age > 18");
|
|
|
|
|
assertThat(adultRuleDefinition.getActions()).isEqualTo(Collections.singletonList("person.setAdult(true);"));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|