1 package org.picocontainer.gems.monitors; 2 3 import java.util.ArrayList ; 4 import java.util.List ; 5 6 import junit.framework.TestCase; 7 8 import org.picocontainer.gems.monitors.ComponentDependencyMonitor.Dependency; 9 import org.picocontainer.gems.monitors.prefuse.ComponentDependencyListener; 10 import org.picocontainer.testmodel.DependsOnList; 11 12 public class ComponentDependencyMonitorTestCase extends TestCase implements ComponentDependencyListener { 13 private ComponentDependencyMonitor monitor; 14 15 private Dependency dependency; 16 17 protected void setUp() throws Exception { 18 super.setUp(); 19 monitor = new ComponentDependencyMonitor(this); 20 dependency = new Dependency(Object .class, String .class); 21 } 22 23 public void testShouldDependOnList() throws Exception { 24 List list = new ArrayList (); 25 DependsOnList dol = new DependsOnList(list); 26 monitor.instantiated(DependsOnList.class.getConstructors()[0], dol, new Object [] { list }, 10); 27 assertEquals(new Dependency(DependsOnList.class, ArrayList .class), dependency); 28 } 29 30 public void addDependency(Dependency dependency) { 31 this.dependency = dependency; 32 } 33 34 public void testAShouldBeDependentOnB() throws Exception { 35 assertEquals(true, dependency.dependsOn(String .class)); 36 } 37 38 public void testADoesntDependOnB() throws Exception { 39 assertEquals(false, dependency.dependsOn(Boolean .class)); 40 } 41 42 public void testADoesntDependOnNullB() throws Exception { 43 assertEquals(false, dependency.dependsOn(null)); 44 } 45 46 public void testShouldNotEqualNull() throws Exception { 47 assertEquals("not equal to null", false, dependency.equals(null)); 48 } 49 50 public void testShouldEqualSelf() throws Exception { 51 assertEquals("equal to self", dependency, dependency); 52 } 53 54 public void testShouldEqualSimilarDependency() throws Exception { 55 assertEquals(dependency, new Dependency(Object .class, String .class)); 56 } 57 58 public void testShouldNotEqualDifferentDependency() throws Exception { 59 assertEquals("not equal to different dependency", false, dependency.equals(new Dependency(Object .class, 60 Object .class))); 61 assertEquals("not equal to different dependency", false, dependency.equals(new Dependency(String .class, 62 String .class))); 63 } 64 65 public void testShouldNotEqualObjectsWhichArentDependencies() throws Exception { 66 assertEquals("not equal to different type", false, dependency.equals(new Object ())); 67 } 68 69 public void testShouldNotThrowNullPointerExceptionsWhenComparingEmptyDependencies() throws Exception { 70 Dependency emptyDependency = new Dependency(null, null); 71 assertEquals("not equal to empty dependency", false, dependency.equals(emptyDependency)); 72 assertEquals("not equal to empty dependency", false, emptyDependency.equals(dependency)); 73 } 74 75 public void testShouldNotThrowNullPointerExceptionsWhenComparingPartialDependencies() throws Exception { 76 Dependency partialDependency = new Dependency(Boolean .class, null); 77 assertEquals("not equal to empty dependency", false, dependency.equals(partialDependency)); 78 assertEquals("not equal to empty dependency", false, partialDependency.equals(dependency)); 79 } 80 } 81 | Popular Tags |