I made the unit test for range checks. Those were really useful and I found some bugs from my logic. At the end of last week I started to make unit tests and some rules to check subsumption and redundancy. To find these I'm going to need the data from the RHS of the rule. Since subsumption and redundancy should only be checked when RHS is the same, or actually, when RHS does the same things. Simple string comparison is not enough. Lines of code can be written in different order and they still do the same. Also lines that do not do anything, like comments and simple text printing for console needs to be ignored. I also need the information from RHS to solve possible rule flows and actions between rules.
The rule flow that I use for subsumption and redundancy checks creates a lot of meta data that I can use when I'm checking other issues from rule base. Right now I can see how I could use them when checking for rule equivalence, combination and deduction.
New Drools release had some new functions, this means that I need to add them in to my analysis model of the Drools AST. Many of the new features seem to be easy to add. I'm trying to make my model so that it has only the data I need and in as simple form as possible. At the same time I'm going to add data about the constraint and restriction orders, this will help me when I'm doing the checks for optimisation.