View Javadoc

    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    *
    9    *      http://www.apache.org/licenses/LICENSE-2.0
    10   *
    11   * Unless required by applicable law or agreed to in writing, software
    12   * distributed under the License is distributed on an "AS IS" BASIS,
    13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14   * See the License for the specific language governing permissions and
    15   * limitations under the License.
    16   */
    17
    18  package org.apache.log4j;
    19
    20  import junit.framework.TestCase;
    21  import junit.framework.TestSuite;
    22  import junit.framework.Test;
    23
    24  import org.apache.log4j.*;
    25  import org.apache.log4j.util.*;
    26  import org.apache.log4j.xml.XLevel;
    27
    28  /***
    29     Test the configuration of the hierarchy-wide threshold.
    30
    31     @author  Ceki G&uuml;lc&uuml;
    32  */
    33  public class HierarchyThresholdTestCase extends TestCase {
    34
    35    static String TEMP = "output/temp";
    36    static Logger logger = Logger.getLogger(HierarchyThresholdTestCase.class);
    37
    38    public HierarchyThresholdTestCase(String name) {
    39      super(name);
    40    }
    41
    42    public void setUp() {
    43    }
    44
    45    public void tearDown() {
    46      System.out.println("Tearing down test case.");
    47      logger.getLoggerRepository().resetConfiguration();
    48    }
    49
    50    public void test1() throws Exception {
    51      PropertyConfigurator.configure("input/hierarchyThreshold1.properties");
    52      common();
    53      assertTrue(Compare.compare(TEMP, "witness/hierarchyThreshold.1"));
    54    }
    55
    56    public void test2() throws Exception {
    57      PropertyConfigurator.configure("input/hierarchyThreshold2.properties");
    58      common();
    59      assertTrue(Compare.compare(TEMP, "witness/hierarchyThreshold.2"));
    60    }
    61
    62    public void test3() throws Exception {
    63      PropertyConfigurator.configure("input/hierarchyThreshold3.properties");
    64      common();
    65      assertTrue(Compare.compare(TEMP, "witness/hierarchyThreshold.3"));
    66    }
    67
    68    public void test4() throws Exception {
    69      PropertyConfigurator.configure("input/hierarchyThreshold4.properties");
    70      common();
    71      assertTrue(Compare.compare(TEMP, "witness/hierarchyThreshold.4"));
    72    }
    73
    74    public void test5() throws Exception {
    75      PropertyConfigurator.configure("input/hierarchyThreshold5.properties");
    76      common();
    77      assertTrue(Compare.compare(TEMP, "witness/hierarchyThreshold.5"));
    78    }
    79
    80    public void test6() throws Exception {
    81      PropertyConfigurator.configure("input/hierarchyThreshold6.properties");
    82      common();
    83      assertTrue(Compare.compare(TEMP, "witness/hierarchyThreshold.6"));
    84    }
    85
    86    public void test7() throws Exception {
    87      PropertyConfigurator.configure("input/hierarchyThreshold7.properties");
    88      common();
    89      assertTrue(Compare.compare(TEMP, "witness/hierarchyThreshold.7"));
    90    }
    91
    92    public void test8() throws Exception {
    93      PropertyConfigurator.configure("input/hierarchyThreshold8.properties");
    94      common();
    95      assertTrue(Compare.compare(TEMP, "witness/hierarchyThreshold.8"));
    96    }
    97
    98
    99    static
    100   void common() {
    101     String oldThreadName = Thread.currentThread().getName();
    102     Thread.currentThread().setName("main");
    103
    104     logger.log(XLevel.TRACE, "m0");
    105     logger.debug("m1");
    106     logger.info("m2");
    107     logger.warn("m3");
    108     logger.error("m4");
    109     logger.fatal("m5");
    110
    111     Thread.currentThread().setName(oldThreadName);
    112   }
    113
    114   public static Test suite() {
    115     TestSuite suite = new TestSuite();
    116     suite.addTest(new HierarchyThresholdTestCase("test1"));
    117     suite.addTest(new HierarchyThresholdTestCase("test2"));
    118     suite.addTest(new HierarchyThresholdTestCase("test3"));
    119     suite.addTest(new HierarchyThresholdTestCase("test4"));
    120     suite.addTest(new HierarchyThresholdTestCase("test5"));
    121     suite.addTest(new HierarchyThresholdTestCase("test6"));
    122     suite.addTest(new HierarchyThresholdTestCase("test7"));
    123     suite.addTest(new HierarchyThresholdTestCase("test8"));
    124     return suite;
    125   }
    126 }