1 package org.drools.rule;
2
3 import org.drools.spi.MockObjectType;
4
5 import junit.framework.TestCase;
6
7 import java.util.Set;
8
9 public class RuleTest extends TestCase
10 {
11 public RuleTest(String name)
12 {
13 super( name );
14 }
15
16 public void setUp()
17 {
18 }
19
20 public void tearDown()
21 {
22 }
23
24 public void testConstruct()
25 {
26 Rule rule = new Rule( "test-rule" );
27
28 assertTrue( ! rule.isValid() );
29
30 try
31 {
32 rule.checkValidity();
33
34 fail( "Should have thrown InvalidRuleException" );
35 }
36 catch (InvalidRuleException e)
37 {
38 // expected and correct
39 }
40 }
41
42 public void testParameterDeclarations()
43 {
44 Rule rule = new Rule( "test-rule" );
45
46 Declaration paramDecl = new Declaration( new MockObjectType( true ),
47 "paramVar" );
48
49 rule.addParameterDeclaration( paramDecl );
50
51 Set paramDecls = rule.getParameterDeclarations();
52
53 assertEquals( 1,
54 paramDecls.size() );
55
56 assertTrue( paramDecls.contains( paramDecl ) );
57
58 Set localDecls = rule.getLocalDeclarations();
59
60 assertEquals( 0,
61 localDecls.size() );
62 }
63
64 public void testLocalDeclarations()
65 {
66 Rule rule = new Rule( "test-rule" );
67
68 Declaration paramDecl = new Declaration( new MockObjectType( true ),
69 "paramVar" );
70
71 Declaration localDecl = new Declaration( new MockObjectType( true ),
72 "paramVar" );
73
74 Extraction extraction = new Extraction( localDecl,
75 null );
76
77 rule.addParameterDeclaration( paramDecl );
78 rule.addExtraction( extraction );
79
80 Set paramDecls = rule.getParameterDeclarations();
81
82 assertEquals( 1,
83 paramDecls.size() );
84
85 assertTrue( paramDecls.contains( paramDecl ) );
86
87 Set localDecls = rule.getLocalDeclarations();
88
89 assertEquals( 1,
90 localDecls.size() );
91
92 assertTrue( localDecls.contains( localDecl ) );
93 }
94 }
This page was automatically generated by Maven