1 package org.sapia.archie.strategy; 2 3 import junit.framework.TestCase; 4 5 import org.sapia.archie.*; 6 import org.sapia.archie.impl.*; 7 8 9 18 public class DefaultLookupNodeStrategyTest extends TestCase { 19 public DefaultLookupNodeStrategyTest(String name) { 20 super(name); 21 } 22 23 public void testLookupCreate() throws Exception { 24 DefaultLookupNodeStrategy strat = new DefaultLookupNodeStrategy(true); 25 DefaultNode root = new DefaultNode(); 26 Node child3 = (Node) strat.lookup(root.getNameParser() 27 .parse("some/node/path"), 28 root); 29 super.assertEquals("path", child3.getName().asString()); 30 31 Node child1 = (Node) strat.lookup(root.getNameParser().parse("some"), root); 32 System.out.println(child1.getParent()); 33 super.assertTrue(child1.getParent() == root); 34 35 Node child2 = (Node) strat.lookup(root.getNameParser().parse("some/node"), 36 root); 37 super.assertTrue(child2.getParent() == child1); 38 39 child3 = (Node) strat.lookup(root.getNameParser().parse("some/node/path"), 40 root); 41 super.assertTrue(child3.getParent() == child2); 42 } 43 44 public void testLookupNotCreate() throws Exception { 45 DefaultLookupNodeStrategy strat = new DefaultLookupNodeStrategy(false); 46 DefaultNode root = new DefaultNode(); 47 String path = "some/node/path"; 48 49 try { 50 Node child = (Node) strat.lookup(root.getNameParser().parse(path), root); 51 throw new Exception ("Node should not have been created for " + path); 52 } catch (NotFoundException e) { 53 } 55 } 56 57 public void testLookup() throws Exception { 58 DefaultLookupNodeStrategy strat = new DefaultLookupNodeStrategy(true); 59 DefaultNode root = new DefaultNode(); 60 Node child = (Node) strat.lookup(root.getNameParser() 61 .parse("some/node/path"), 62 root); 63 64 strat = new DefaultLookupNodeStrategy(false); 65 child = (Node) strat.lookup(root.getNameParser().parse("some/node/path"), 66 root); 67 68 child = (Node) strat.lookup(root.getNameParser().parse("some"), 69 root); 70 } 71 } 72 | Popular Tags |