Class DependencyConstraint
java.lang.Object
jdepend.framework.DependencyConstraint
The
DependencyConstraint class is a constraint that tests
whether two package-dependency graphs are equivalent.
This class is useful for writing package dependency assertions (e.g. JUnit). For example, the following JUnit test will ensure that the 'ejb' and 'web' packages only depend upon the 'util' package, and no others:
public void testDependencyConstraint() {
JDepend jdepend = new JDepend();
jdepend.addDirectory("/path/to/classes");
Collection analyzedPackages = jdepend.analyze();
DependencyConstraint constraint = new DependencyConstraint();
JavaPackage ejb = constraint.addPackage("com.xyz.ejb");
JavaPackage web = constraint.addPackage("com.xyz.web");
JavaPackage util = constraint.addPackage("com.xyz.util");
ejb.dependsUpon(util);
web.dependsUpon(util);
assertEquals("Dependency mismatch", true, constraint
.match(analyzedPackages));
}
- Author:
- Mike Clark, Clarkware Consulting, Inc.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddPackage(String packageName) voidaddPackage(JavaPackage jPackage) booleanmatch(Collection expectedPackages) Indicates whether the specified packages match the packages in this constraint.
-
Constructor Details
-
DependencyConstraint
public DependencyConstraint()
-
-
Method Details
-
addPackage
-
addPackage
-
getPackages
-
match
Indicates whether the specified packages match the packages in this constraint.- Returns:
trueif the packages match this constraint
-