1 7 package org.jboss.test.cache.test.eviction; 8 9 import junit.framework.TestCase; 10 import junit.framework.Test; 11 import junit.framework.TestSuite; 12 import org.jboss.cache.Fqn; 13 import org.jboss.cache.eviction.Region; 14 import org.jboss.cache.eviction.RegionManager; 15 import org.jboss.cache.eviction.EvictedEventNode; 16 17 import java.util.HashMap ; 18 19 22 public class RegionUnitTestCase extends TestCase 23 { 24 RegionManager regionManager_; 25 public RegionUnitTestCase(String s) 26 { 27 super(s); 28 } 29 30 public void setUp() throws Exception 31 { 32 super.setUp(); 33 regionManager_ = new RegionManager(null); 34 regionManager_.createRegion("/a/b", null); 35 } 36 37 public void tearDown() throws Exception 38 { 39 super.tearDown(); 40 } 41 42 public void testAddedQueue() { 43 Fqn fqn1 = Fqn.fromString("/a/b/c"); 44 Fqn fqn2 = Fqn.fromString("/a/b/d"); 45 Fqn fqn3 = Fqn.fromString("/a/b/e"); 46 47 Region region = regionManager_.getRegion("/a/b"); 48 region.setAddedNode(fqn1); 49 region.setAddedNode(fqn2); 50 region.setAddedNode(fqn3); 51 52 assertEquals("AddedNode queue size ", 3, region.nodeEventQueueSize()); 53 EvictedEventNode node = (EvictedEventNode)region.takeLastEventNode(); 54 Fqn fqn = node.getFqn(); 55 assertEquals("Node retrieved should be FILO ", fqn, fqn1); 56 assertEquals("AddedNode queue size ", 2, region.nodeEventQueueSize()); 57 fqn = ((EvictedEventNode)region.takeLastEventNode()).getFqn(); 58 fqn = ((EvictedEventNode)region.takeLastEventNode()).getFqn(); 59 node = ((EvictedEventNode)region.takeLastEventNode()); 60 assertNull("Node should be null", node); 61 } 62 63 public void testEventQueue() { 64 Fqn fqn1 = Fqn.fromString("/a/b/c"); 65 Fqn fqn2 = Fqn.fromString("/a/b/d"); 66 Fqn fqn3 = Fqn.fromString("/a/b/e"); 67 68 Region region = regionManager_.getRegion("/a/b"); 69 region.setRemovedNode(fqn1); 70 region.setAddedNode(fqn2); 71 region.setVisitedNode(fqn3); 72 73 assertEquals("RemovedNode queue size ", 3, region.nodeEventQueueSize()); 74 Integer event = ((EvictedEventNode)region.takeLastEventNode()).getEvent(); 75 assertEquals("Node retrieved should be: ", EvictedEventNode.REMOVE_EVENT, event); 76 Fqn fqn = ((EvictedEventNode)region.takeLastEventNode()).getFqn(); 77 fqn = ((EvictedEventNode)region.takeLastEventNode()).getFqn(); 78 EvictedEventNode node = ((EvictedEventNode)region.takeLastEventNode()); 79 assertNull("Node should be null", node); 80 } 81 82 void log(String msg) 83 { 84 System.out.println("-- " + msg); 85 } 86 87 public static Test suite() 88 { 89 return new TestSuite(RegionUnitTestCase.class); 90 } 91 92 public static void main(String [] args) 93 { 94 junit.textui.TestRunner.run(suite()); 95 } 96 97 } 98 | Popular Tags |