/* ======================================================================== * JCommon : a free general purpose class library for the Java(tm) platform * ======================================================================== * * (C) Copyright 2000-2005, by Object Refinery Limited and Contributors. * * Project Info: http://www.jfree.org/jcommon/index.html * * This library is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; either version 2.1 of the License, or * (at your option) any later version. * * This library is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public * License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, * USA. * * [Java is a trademark or registered trademark of Sun Microsystems, Inc. * in the United States and other countries.] * * ------------ * LogTest.java * ------------ * (C)opyright 2004, by Thomas Morgner and Contributors. * * Original Author: Thomas Morgner; * Contributor(s): David Gilbert (for Object Refinery Limited); * * $Id: LogTest.java,v 1.4 2007/11/02 17:50:37 taqua Exp $ * * Changes * ------- * 21-Feb-2004 : Initial version * 07-Jun-2004 : Added JCommon header (DG); */ package org.jfree.util.junit; import junit.framework.TestCase; import org.jfree.util.Log; import org.jfree.util.LogContext; import org.jfree.util.LogTarget; /** * A test for... */ public class LogTest extends TestCase { private class LogTargetImpl implements LogTarget { /** * Default constructor. */ public LogTargetImpl() { super(); } /** * Logs a message at a specified log level. * * @param level the log level. * @param message the log message. */ public void log(final int level, final Object message) { // nothing required. } /** * Logs a message at a specified log level. * * @param level the log level. * @param message the log message. * @param e the exception */ public void log(final int level, final Object message, final Exception e) { // nothing required. } } /** * Creates a new test. * * @param s the test name. */ public LogTest(final String s) { super(s); } /** * Tests the addTarget() and removeTarget() methods. */ public void testAddRemove() { final LogTarget a = new LogTargetImpl(); final LogTarget b = new LogTargetImpl(); Log.getInstance().removeTarget(a); Log.getInstance().removeTarget(b); Log.getInstance().addTarget(a); Log.getInstance().addTarget(b); Log.getInstance().removeTarget(a); Log.getInstance().removeTarget(b); Log.getInstance().addTarget(a); Log.getInstance().addTarget(b); Log.getInstance().removeTarget(b); Log.getInstance().removeTarget(a); Log.getInstance().getTargets(); } /** * Tests the log message methods. */ public void testLogMessage () { Log.debug("Test"); Log.info("Test"); Log.warn("Test"); Log.error("Test"); } /** * Tests the log context. */ public void testLogContext() { final LogContext ctx = Log.createContext((String) null); assertEquals("Context = null", ctx, Log.createContext((String) null)); final LogContext ctx2 = Log.createContext("Test"); assertEquals("Context Test", ctx2, Log.createContext("Test")); } }