KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > sapia > regis > cache > CacheNodeTest


1 package org.sapia.regis.cache;
2
3 import org.sapia.regis.Property;
4 import org.sapia.regis.Node;
5 import org.sapia.regis.RWNode;
6 import org.sapia.regis.impl.NodeImpl;
7 import org.sapia.regis.local.LocalRegistry;
8
9 import junit.framework.TestCase;
10
11 public class CacheNodeTest extends TestCase {
12   
13   LocalRegistry wrapped;
14   CacheRegistry cacheReg;
15   
16   public CacheNodeTest(String JavaDoc arg0) {
17     super(arg0);
18   }
19   
20   protected void setUp() throws Exception JavaDoc {
21     wrapped = new LocalRegistry();
22     RWNode child1 = (RWNode)((RWNode)wrapped.getRoot()).createChild("child1");
23     child1.setProperty("prop1", "val1");
24     RWNode link = new NodeImpl(null, "link");
25     child1.appendLink(link);
26     child1.prependLink(link);
27     RWNode child2 = (RWNode)((RWNode)wrapped.getRoot().getChild("child1")).createChild("child2");
28     child2.setProperty("prop2", "100");
29     child2.setInheritsParent(true);
30     cacheReg = new CacheRegistry(wrapped, 500);
31   }
32   
33   public void testGetNodes() {
34     Node child1 = cacheReg.getRoot().getChild("child1");
35     super.assertTrue(child1 instanceof CacheNode);
36     
37     Node child2 = child1.getChild("child2");
38     super.assertTrue(child2 instanceof CacheNode);
39     
40     Node parent = child2.getParent();
41     super.assertTrue(parent instanceof CacheNode);
42     
43   }
44   
45   public void testChildren(){
46     Node child1 = cacheReg.getRoot().getChild("child1");
47     super.assertTrue(child1.getChildren().iterator().next() instanceof CacheNode);
48   }
49   
50   public void testGetLinks(){
51     Node child1 = cacheReg.getRoot().getChild("child1");
52     super.assertTrue(child1.getLinks(true).iterator().next() instanceof CacheNode);
53     super.assertTrue(child1.getLinks(false).iterator().next() instanceof CacheNode);
54   }
55   
56   public void testGetProperty(){
57     Node child1 = cacheReg.getRoot().getChild("child1");
58     super.assertEquals("val1", child1.getProperty("prop1").asString());
59     
60     Node child2 = child1.getChild("child2");
61     super.assertEquals("val1", child2.getProperty("prop1").asString());
62     super.assertEquals(100, child2.getProperty("prop2").asInt());
63   }
64   
65   public void testRefresh() throws InterruptedException JavaDoc{
66     NodeImpl child1 =(NodeImpl)wrapped.getRoot().getChild("child1");
67     Node child2 = cacheReg.getRoot().getChild("child1").getChild("child2");
68     Property prop = child2.getProperty("prop1");
69     super.assertEquals("val1", prop.asString());
70     Thread.sleep(1000);
71     child1.setProperty("prop1", "val2");
72     child1.setVersion(child1.getVersion()+1);
73     super.assertEquals("val2", prop.asString());
74   }
75
76 }
77
Popular Tags