[jboss-svn-commits] JBL Code SVN: r32499 - in labs/jbossrules/trunk/drools-factconstraint/src: test/java/org/drools/factconstraints/server/predefined and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Apr 10 16:26:15 EDT 2010


Author: eaa
Date: 2010-04-10 16:26:13 -0400 (Sat, 10 Apr 2010)
New Revision: 32499

Modified:
   labs/jbossrules/trunk/drools-factconstraint/src/main/java/org/drools/factconstraints/server/predefined/RangeConstraint.java
   labs/jbossrules/trunk/drools-factconstraint/src/test/java/org/drools/factconstraints/server/predefined/RangeConstraintSingleOperatorTest.java
Log:
JBRULES-2478: drools-factconstraint should use the new subclasses of drools-verifier's LiteralRestriction.
	- RangeConstraint now uses NumberRestriction class. 

Modified: labs/jbossrules/trunk/drools-factconstraint/src/main/java/org/drools/factconstraints/server/predefined/RangeConstraint.java
===================================================================
--- labs/jbossrules/trunk/drools-factconstraint/src/main/java/org/drools/factconstraints/server/predefined/RangeConstraint.java	2010-04-09 22:20:49 UTC (rev 32498)
+++ labs/jbossrules/trunk/drools-factconstraint/src/main/java/org/drools/factconstraints/server/predefined/RangeConstraint.java	2010-04-10 20:26:13 UTC (rev 32499)
@@ -39,13 +39,13 @@
         rules.append("global VerifierReport result;\n");
 
         rules.append("declare RangeConstraintCandidate{0}\n");
-        rules.append("    restriction : LiteralRestriction\n");
+        rules.append("    restriction : NumberRestriction\n");
         rules.append("    greaterValue : double\n");
         rules.append("    lessValue : double\n");
         rules.append("end\n");
 
 
-        rules.append("function void addResult{0}(VerifierReport report, LiteralRestriction restriction, Severity severity, String message){\n");
+        rules.append("function void addResult{0}(VerifierReport report, NumberRestriction restriction, Severity severity, String message){\n");
         rules.append("    Map<String,String> impactedRules = new HashMap<String,String>();\n");
         rules.append("    report.add(new VerifierMessage(\n");
         rules.append("        impactedRules,\n");
@@ -68,11 +68,10 @@
 
         rules.append("rule \"Range_Field_Constraint_==_{0}\" extends \"Range_Field_Constraint_Base_{0}\"\n");
         rules.append("  when\n");
-        rules.append("     ($restriction :LiteralRestriction(\n");
+        rules.append("     ($restriction :NumberRestriction(\n");
         rules.append("            fieldPath == $field.path,\n");
         rules.append("            operator == Operator.EQUAL,\n");
-        rules.append("            (valueType == Field.DOUBLE || ==Field.INT),\n");
-        rules.append("            (doubleValue < {3} || > {4}))\n");
+        rules.append("            (value < {3} || > {4}))\n");
         rules.append("      )\n");
         rules.append("  then\n");
         rules.append("      addResult{0}(result, $restriction, Severity.ERROR, \"The value must be between {3} and {4}\");\n");
@@ -80,11 +79,10 @@
 
         rules.append("rule \"Range_Field_Constraint_!=_{0}\" extends \"Range_Field_Constraint_Base_{0}\"\n");
         rules.append("  when\n");
-        rules.append("      ($restriction :LiteralRestriction(\n");
+        rules.append("      ($restriction :NumberRestriction(\n");
         rules.append("            fieldPath == $field.path,\n");
         rules.append("            operator == Operator.NOT_EQUAL,\n");
-        rules.append("            (valueType == Field.DOUBLE || ==Field.INT),\n");
-        rules.append("            (doubleValue < {3} || > {4}))\n");
+        rules.append("            (value < {3} || > {4}))\n");
         rules.append("      )\n");
         rules.append("  then\n");
         rules.append("    addResult{0}(result, $restriction, Severity.WARNING, \"Impossible value. Possible values are from {3} to {4}\");\n");
@@ -92,12 +90,12 @@
 
         rules.append("rule \"Range_Field_Constraint_>_{0}\" extends \"Range_Field_Constraint_Base_{0}\"\n");
         rules.append("  when\n");
-        rules.append("      ($restriction :LiteralRestriction(\n");
+        rules.append("      ($restriction :NumberRestriction(\n");
         rules.append("            fieldPath == $field.path,\n");
         rules.append("            $rulePath: rulePath,\n");
         rules.append("            (operator == Operator.GREATER || == Operator.GREATER_OR_EQUAL))\n");
         rules.append("      )\n");
-        rules.append("      not (LiteralRestriction(\n");
+        rules.append("      not (NumberRestriction(\n");
         rules.append("          fieldPath == $field.path,\n");
         rules.append("          rulePath == $rulePath,\n");
         rules.append("          (operator == Operator.LESS || == Operator.LESS_OR_EQUAL)\n");
@@ -109,12 +107,12 @@
 
         rules.append("rule \"Range_Field_Constraint_<_{0}\"  extends \"Range_Field_Constraint_Base_{0}\"\n");
         rules.append("  when\n");
-        rules.append("      ($restriction :LiteralRestriction(\n");
+        rules.append("      ($restriction :NumberRestriction(\n");
         rules.append("            fieldPath == $field.path,\n");
         rules.append("            $rulePath: rulePath,\n");
         rules.append("            (operator == Operator.LESS || == Operator.LESS_OR_EQUAL))\n");
         rules.append("      )\n");
-        rules.append("      not (LiteralRestriction(\n");
+        rules.append("      not (NumberRestriction(\n");
         rules.append("          fieldPath == $field.path,\n");
         rules.append("          rulePath == $rulePath,\n");
         rules.append("          (operator == Operator.GREATER || == Operator.GREATER_OR_EQUAL)\n");
@@ -129,26 +127,24 @@
 
         rules.append("rule \"identifyRangeConstraintCandidate{0}\" extends \"Range_Field_Constraint_Base_{0}\"\n");
         rules.append("when\n");
-        rules.append("  ($restriction1 :LiteralRestriction(\n");
+        rules.append("  ($restriction1 :NumberRestriction(\n");
         rules.append("      $rulePath: rulePath,\n");
         rules.append("      fieldPath == $field.path,\n");
         rules.append("      (operator == Operator.GREATER || == Operator.GREATER_OR_EQUAL),\n");
         rules.append("      $op1: operator,\n");
-        rules.append("      (valueType == Field.INT || == Field.DOUBLE),\n");
-        rules.append("      $value1: doubleValue))\n");
-        rules.append("  ($restriction2 :LiteralRestriction(\n");
+        rules.append("      $value1: value))\n");
+        rules.append("  ($restriction2 :NumberRestriction(\n");
         rules.append("      fieldPath == $field.path,\n");
         rules.append("      rulePath == $rulePath,\n");
         rules.append("      (operator == Operator.LESS || == Operator.LESS_OR_EQUAL),\n");
         rules.append("      $op2: operator,\n");
-        rules.append("      $value2: doubleValue))\n");
+        rules.append("      $value2: value))\n");
         rules.append("then\n");
-        rules.append("    System.out.println(\"Fired\");\n");
 
         rules.append("    RangeConstraintCandidate{0} rcc = new RangeConstraintCandidate{0}();\n");
         rules.append("    rcc.setRestriction($restriction1);\n");
-        rules.append("    rcc.setGreaterValue($value1);\n");
-        rules.append("    rcc.setLessValue($value2);\n");
+        rules.append("    rcc.setGreaterValue($value1.doubleValue());\n");
+        rules.append("    rcc.setLessValue($value2.doubleValue());\n");
 
         rules.append("    insert (rcc);\n");
 

Modified: labs/jbossrules/trunk/drools-factconstraint/src/test/java/org/drools/factconstraints/server/predefined/RangeConstraintSingleOperatorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-factconstraint/src/test/java/org/drools/factconstraints/server/predefined/RangeConstraintSingleOperatorTest.java	2010-04-09 22:20:49 UTC (rev 32498)
+++ labs/jbossrules/trunk/drools-factconstraint/src/test/java/org/drools/factconstraints/server/predefined/RangeConstraintSingleOperatorTest.java	2010-04-10 20:26:13 UTC (rev 32499)
@@ -329,6 +329,8 @@
         verifier.addResourcesToVerify(ResourceFactory.newByteArrayResource(rulesToVerify.getBytes()),
                 ResourceType.DRL);
 
+        boolean noProblems = verifier.fireAnalysis();
+
         if (verifier.hasErrors()) {
             for (VerifierError error : verifier.getErrors()) {
                 System.out.println(error.getMessage());
@@ -336,9 +338,6 @@
             throw new RuntimeException("Error building verifier");
         }
 
-        Assert.assertFalse(verifier.hasErrors());
-
-        boolean noProblems = verifier.fireAnalysis();
         Assert.assertTrue(noProblems);
 
         return verifier.getResult();



More information about the jboss-svn-commits mailing list