/*
* Copyright © 2014 YAOCHEN Corporation, All Rights Reserved
*/
package com.easyooo.framework.rule;
import static org.hamcrest.Matchers.is;
import static org.junit.Assert.assertThat;
import org.junit.Test;
/**
*
* @author Killer
*/
public class RuleVersionTest {
String classRuleText = "int a = local.get(\"a\"); System.out.println(\"a=\" + a);"
+ " if(a > 18 && a < 36){ return \"美女\";} else{ return \"滚\"; }";
/**
* 简单的测试一段Java脚本,应该重新编译新的版本
* @throws RuleException
*/
@Test
public void testJavaEngine() throws RuleException{
Rule rule = RuleBuilder.build("1", classRuleText, Language.JAVA, 1);
String rv = new RuleEngineProxy(rule).eval("a", 24);
Rule rule1 = RuleBuilder.build("1", classRuleText , Language.JAVA, 2);
String rv1 = new RuleEngineProxy(rule1).eval("a", 24);
Rule rule2 = RuleBuilder.build("1", classRuleText , Language.JAVA, 2);
String rv2 = new RuleEngineProxy(rule2).eval("a", 12);
Rule rule3 = RuleBuilder.build("1", classRuleText , Language.JAVA, 1);
String rv3 = new RuleEngineProxy(rule3).eval("a", 12);
assertThat(rv, is("美女"));
assertThat(rv1, is("美女"));
assertThat(rv2, is("滚"));
assertThat(rv3, is("滚"));
}
}