1 32 33 package com.jeantessier.dependencyfinder.cli; 34 35 import java.io.*; 36 import java.util.*; 37 38 import junit.framework.*; 39 40 import org.xml.sax.*; 41 42 import com.jeantessier.classreader.*; 43 import com.jeantessier.dependency.*; 44 import com.jeantessier.metrics.*; 45 46 public class TestVerboseListener extends TestCase { 47 public static final String TEST_CLASS = "test"; 48 public static final String TEST_FILENAME = "classes" + File.separator + "test.class"; 49 50 private StringWriter writer; 51 private VerboseListener listener; 52 53 protected void setUp() throws Exception { 54 super.setUp(); 55 56 writer = new StringWriter(); 57 listener = new VerboseListener(); 58 59 listener.setWriter(writer); 60 } 61 62 public void testLoadListener() { 63 AggregatingClassfileLoader loader = new AggregatingClassfileLoader(); 64 loader.addLoadListener(listener); 65 loader.load(Collections.singleton(TEST_FILENAME)); 66 67 assertTrue("Wrote nothing", writer.toString().length() > 0); 68 } 69 70 public void testDependencyListener() { 71 AggregatingClassfileLoader loader = new AggregatingClassfileLoader(); 72 loader.load(Collections.singleton(TEST_FILENAME)); 73 74 CodeDependencyCollector collector = new CodeDependencyCollector(); 75 collector.addDependencyListener(listener); 76 loader.getClassfile(TEST_CLASS).accept(collector); 77 78 assertTrue("Wrote nothing", writer.toString().length() > 0); 79 } 80 81 public void testMetricsListener() throws IOException, SAXException { 82 AggregatingClassfileLoader loader = new AggregatingClassfileLoader(); 83 loader.load(Collections.singleton(TEST_FILENAME)); 84 85 MetricsFactory factory = new MetricsFactory("test", new MetricsConfigurationLoader(Boolean.getBoolean("DEPENDENCYFINDER_TESTS_VALIDATE")).load("etc" + File.separator + "MetricsConfig.xml")); 86 com.jeantessier.metrics.MetricsGatherer gatherer = new com.jeantessier.metrics.MetricsGatherer("test", factory); 87 gatherer.addMetricsListener(listener); 88 loader.getClassfile(TEST_CLASS).accept(gatherer); 89 90 assertTrue("Wrote nothing", writer.toString().length() > 0); 91 } 92 93 public void testPrintWriter() { 94 String testText = "foobar"; 95 96 listener.print(testText); 97 98 assertEquals(testText + System.getProperty("line.separator"), writer.toString()); 99 } 100 } 101 | Popular Tags |