hammant 2002/11/10 17:35:19 Modified: src/java/org/apache/avalon/phoenix/tools/punit PUnitResourceProvider.java PUnitTestCase.java src/test/org/apache/avalon/phoenix/tools/punit/test PUnitTestCaseTestCase.java TestBlock.java Added: src/java/org/apache/avalon/phoenix/tools/punit PUnitLogger.java Log: Logger working for Punit Revision Changes Path 1.6 +4 -4 jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/tools/punit/PUnitResourceProvider.java Index: PUnitResourceProvider.java =================================================================== RCS file: /home/cvs/jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/tools/punit/PUnitResourceProvider.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- PUnitResourceProvider.java 9 Nov 2002 19:23:21 -0000 1.5 +++ PUnitResourceProvider.java 11 Nov 2002 01:35:19 -0000 1.6 @@ -9,7 +9,6 @@ import org.apache.excalibur.containerkit.lifecycle.ResourceProvider; import org.apache.avalon.framework.logger.Logger; -import org.apache.avalon.framework.logger.ConsoleLogger; import org.apache.avalon.framework.context.Context; import org.apache.avalon.framework.component.ComponentManager; import org.apache.avalon.framework.service.ServiceManager; @@ -27,6 +26,7 @@ private ServiceManager m_serviceManager; private ComponentManager m_componentManager; private Configuration m_configuration; + private Logger m_logger; /** * PUnitResourceProvider @@ -34,11 +34,12 @@ * @param configuration The configuration */ public PUnitResourceProvider( ServiceManager serviceManager, - Configuration configuration ) + Configuration configuration, Logger logger ) { m_serviceManager = serviceManager; m_componentManager = new PUnitComponentManager(serviceManager); m_configuration = configuration; + m_logger = logger; } /** @@ -60,8 +61,7 @@ */ public Logger createLogger(Object object) throws Exception { - // should be queryable mock logger ? - return new ConsoleLogger(); + return m_logger; } /** 1.4 +23 -1 jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/tools/punit/PUnitTestCase.java Index: PUnitTestCase.java =================================================================== RCS file: /home/cvs/jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/tools/punit/PUnitTestCase.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- PUnitTestCase.java 9 Nov 2002 19:23:21 -0000 1.3 +++ PUnitTestCase.java 11 Nov 2002 01:35:19 -0000 1.4 @@ -23,6 +23,7 @@ private LifecycleHelper m_lifecycleHelper; private ArrayList m_blocks; private PUnitServiceManager m_pUnitServiceManager; + private PUnitLogger m_pUnitLogger = new PUnitLogger(); /** * PUnitTestCase @@ -34,6 +35,27 @@ } /** + * Query the log + * @param startsWith For an expression that starts with this + * @return The logged entry. + */ + public final String lookupInLog(String startsWith) + { + return m_pUnitLogger.get(startsWith); + } + + /** + * Query the log + * @param startsWith For an expression that starts with this + * @return true or not + */ + public final boolean logHasEntry(String startsWith) + { + return m_pUnitLogger.contains(startsWith); + } + + + /** * Setup as per Junit * @throws Exception If a problem */ @@ -56,7 +78,7 @@ Object block , Configuration configuration ) { PUnitBlock pBlock = new PUnitBlock( blockName, block, - new PUnitResourceProvider(m_pUnitServiceManager, configuration) ); + new PUnitResourceProvider(m_pUnitServiceManager, configuration, m_pUnitLogger) ); m_blocks.add( pBlock ); if (serviceName != null) { 1.1 jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/tools/punit/PUnitLogger.java Index: PUnitLogger.java =================================================================== /* * Copyright (C) The Apache Software Foundation. All rights reserved. * * This software is published under the terms of the Apache Software License * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ package org.apache.avalon.phoenix.tools.punit; import org.apache.avalon.framework.logger.Logger; import java.util.ArrayList; /** * PunitLogger * @author Paul Hammant */ public class PUnitLogger implements Logger { private ArrayList m_log = new ArrayList(); /** * Get a logged entry. * @param startsWith This term * @return The full term */ public String get(String startsWith) { for (int i = 0; i < m_log.size(); i++) { String s = (String) m_log.get(i); if (s.startsWith(startsWith)) { return s; } } return null; } /** * Contains a logged entry * @param s The term * @return true or not. */ public boolean contains(String s) { return get(s) != null; } /** * Debug an entry as per Loggable * @param s the term */ public void debug(String s) { m_log.add("D:" + s); } /** * Debug an entry as per Loggable * @param s the term * @param throwable An exception */ public void debug(String s, Throwable throwable) { m_log.add("D:" + s + ":" + throwable != null ? throwable.getMessage() : ""); } public boolean isDebugEnabled() { return true; } /** * Info an entry as per Loggable * @param s the term */ public void info(String s) { m_log.add("I:" + s); } /** * Info an entry as per Loggable * @param s the term * @param throwable An exception */ public void info(String s, Throwable throwable) { m_log.add("I:" + s + ":" + throwable != null ? throwable.getMessage() : ""); } /** * Is Info Enabled * @return */ public boolean isInfoEnabled() { return true; } /** * Warn an entry as per Loggable * @param s the term */ public void warn(String s) { m_log.add("W:" + s); } /** * Warn an entry as per Loggable * @param s the term * @param throwable An exception */ public void warn(String s, Throwable throwable) { m_log.add("W:" + s + ":" + throwable != null ? throwable.getMessage() : ""); } /** * Is Warn Enabled * @return */ public boolean isWarnEnabled() { return false; } /** * Error an entry as per Loggable * @param s the term */ public void error(String s) { m_log.add("E:" + s); } /** * Error an entry as per Loggable * @param s the term * @param throwable An exception */ public void error(String s, Throwable throwable) { m_log.add("E:" + s + ":" + throwable != null ? throwable.getMessage() : ""); } /** * Is Error Enabled * @return */ public boolean isErrorEnabled() { return true; } /** * Log a fatal error as per Loggable * @param s the term */ public void fatalError(String s) { m_log.add("F:" + s); } /** * Log a fatal error entry as per Loggable * @param s the term * @param throwable An exception */ public void fatalError(String s, Throwable throwable) { m_log.add("F:" + s + ":" + throwable != null ? throwable.getMessage() : ""); } /** * Is Fatal Error Enabled * @return */ public boolean isFatalErrorEnabled() { return true; } /** * Gtet the child logger * @param s The hint to use (ignored) * @return The child logger. */ public Logger getChildLogger(String s) { return this; } } 1.2 +6 -0 jakarta-avalon-phoenix/src/test/org/apache/avalon/phoenix/tools/punit/test/PUnitTestCaseTestCase.java Index: PUnitTestCaseTestCase.java =================================================================== RCS file: /home/cvs/jakarta-avalon-phoenix/src/test/org/apache/avalon/phoenix/tools/punit/test/PUnitTestCaseTestCase.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- PUnitTestCaseTestCase.java 5 Nov 2002 23:50:50 -0000 1.1 +++ PUnitTestCaseTestCase.java 11 Nov 2002 01:35:19 -0000 1.2 @@ -32,11 +32,17 @@ new InputSource(new StringReader("<hi>Hi</hi>"))); addBlock("bl","block", block, configuration); startup(); + // check lifecycle run thru assertNotNull("Configuration null", block.m_configuration); assertNotNull("Context null", block.m_context); assertNotNull("Logger null", block.m_logger); assertNotNull("ServiceManager null", block.m_serviceManager); assertTrue("Not Initialized", block.m_initialized); + // check lifecycle events logged + assertTrue("Service Not logged", super.logHasEntry("I:service")); + assertTrue("Initialize Not logged", super.logHasEntry("W:initialize")); + assertTrue("Contextualize Not logged", super.logHasEntry("E:contextualize")); + assertTrue("Configure Not logged", super.logHasEntry("F:configure")); shutdown(); } 1.2 +4 -5 jakarta-avalon-phoenix/src/test/org/apache/avalon/phoenix/tools/punit/test/TestBlock.java Index: TestBlock.java =================================================================== RCS file: /home/cvs/jakarta-avalon-phoenix/src/test/org/apache/avalon/phoenix/tools/punit/test/TestBlock.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- TestBlock.java 5 Nov 2002 23:50:50 -0000 1.1 +++ TestBlock.java 11 Nov 2002 01:35:19 -0000 1.2 @@ -32,31 +32,30 @@ public void service( final ServiceManager serviceManager ) throws ServiceException { - System.out.println("-->1"); + m_logger.info("service"); m_serviceManager = serviceManager; } public void initialize() throws Exception { - System.out.println("-->2"); + m_logger.warn("initialize"); m_initialized = true; } public void contextualize(Context context) throws ContextException { - System.out.println("-->3"); + m_logger.error("contextualize"); m_context = context; } public void enableLogging(Logger logger) { - System.out.println("-->4"); m_logger = logger; } public void configure(Configuration configuration) throws ConfigurationException { - System.out.println("-->5"); + m_logger.fatalError("configure"); m_configuration = configuration; }
-- To unsubscribe, e-mail: <mailto:avalon-cvs-unsubscribe@;jakarta.apache.org> For additional commands, e-mail: <mailto:avalon-cvs-help@;jakarta.apache.org>