jvanzyl 01/08/26 10:59:32 Modified: jjar/src/test/org/apache/commons/jjar TestDependencyEngine.java Log: - now have tests for - cookielist - single project dep list where target is not include (jjar) - multi project dep list where targets are included (maven) - reseting the dep engine Revision Changes Path 1.3 +74 -52 jakarta-commons-sandbox/jjar/src/test/org/apache/commons/jjar/TestDependencyEngine.java Index: TestDependencyEngine.java =================================================================== RCS file: /home/cvs/jakarta-commons-sandbox/jjar/src/test/org/apache/commons/jjar/TestDependencyEngine.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- TestDependencyEngine.java 2001/08/26 17:07:14 1.2 +++ TestDependencyEngine.java 2001/08/26 17:59:32 1.3 @@ -10,7 +10,7 @@ /** * @author <a href="mailto:[EMAIL PROTECTED]">Jason van Zyl</a> - * @version $Id: TestDependencyEngine.java,v 1.2 2001/08/26 17:07:14 jvanzyl Exp $ + * @version $Id: TestDependencyEngine.java,v 1.3 2001/08/26 17:59:32 jvanzyl Exp $ */ public class TestDependencyEngine extends TestCase @@ -38,14 +38,14 @@ d = new DependencyEngine(); } - public void testProjectDependencies() + public void testCookieList() { String compare = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; try { addAlphabetProjects(d); - assertEquals(compare,getCookieListString(d)); + assertEquals(compare,getList(d.generateCookielist())); } catch(Exception e) { @@ -61,7 +61,7 @@ { addAlphabetProjects(d); d.reset(); - assertEquals(compare,getCookieListString(d)); + assertEquals(compare,getList(d.generateCookielist())); } catch(Exception e) { @@ -69,6 +69,72 @@ } } + public void testSingleProjectDependency() + { + // tests the engine with + // + // A B C + // ^ ^ ^\ + // \/ \/ | + // D <-E | + // ^ / + // \ / + // F <- + + String compare = "ABD"; + + try + { + d.reset(); + d.addProject("A", deps(null)); + d.addProject("B", deps(null)); + d.addProject("C", deps("F")); + d.addProject("D", deps("A,B")); + d.addProject("E", deps("B,C,D")); + d.addProject("F", deps("D")); + + // Get the dependencies where we exclude the + // specified target. + assertEquals(compare,getList(d.getDependencies("F"))); + + } + catch( Exception e ) + { + fail(); + } + } + + public void testMultiProjectDependency() + { + String compare = "12BCDA3"; + + try + { + d.reset(); + d.addProject("A", deps("B,C,D")); + d.addProject("B", deps("1,2")); + d.addProject("C", deps(null)); + d.addProject("D", deps(null)); + d.addProject("1", deps(null)); + d.addProject("2", deps(null)); + d.addProject("3", deps("C")); + + ArrayList projects = new ArrayList(); + projects.add("A"); + projects.add("3"); + + // We do not want to exclude the target. This is simulating + // maven where all dependencies are built including the + // target package. + assertEquals(compare,getList(d.getDependencies(projects, false))); + + } + catch( Exception e ) + { + fail(); + } + } + private void addAlphabetProjects(DependencyEngine d) throws Exception { @@ -99,32 +165,16 @@ d.addProject( "B", deps("A")); d.addProject( "A", deps(null)); } - - private String getCookieListString(DependencyEngine d) - throws Exception - { - StringBuffer sb = new StringBuffer(); - List depList = d.generateCookielist(); - Iterator i = depList.iterator(); - - while(i.hasNext()) - { - sb.append((String) i.next()); - } - - return sb.toString(); - } - private String getDependencyString(DependencyEngine d, List projects) + private String getList(List list) throws Exception { StringBuffer sb = new StringBuffer(); - List depList = d.getDependencies(projects); - Iterator i = depList.iterator(); - + Iterator i = list.iterator(); while(i.hasNext()) { - sb.append((String) i.next()); + String item = (String) i.next(); + sb.append(item); } return sb.toString(); @@ -146,32 +196,4 @@ return deps; } - - public void testMultiProjectDependency() - { - String compare = "12BCD3A"; - - try - { - d.reset(); - d.addProject("A", deps("B,C,D")); - d.addProject("B", deps("1,2")); - d.addProject("C", deps(null)); - d.addProject("D", deps(null)); - d.addProject("1", deps(null)); - d.addProject("2", deps(null)); - d.addProject("3", deps("C")); - - ArrayList projects = new ArrayList(); - projects.add("A"); - projects.add("3"); - - assertEquals(compare,getDependencyString(d, projects)); - - } - catch( Exception e ) - { - fail(); - } - } }