⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loggingeventtest.java

📁 apache的log4j源码
💻 JAVA
字号:
/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at * *      http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.log4j.spi;import junit.framework.TestCase;import org.apache.log4j.Level;import org.apache.log4j.Logger;import org.apache.log4j.MDC;import org.apache.log4j.NDC;import org.apache.log4j.spi.LocationInfo;import org.apache.log4j.util.SerializationTestHelper;import org.apache.log4j.Priority;import org.apache.log4j.Category;/** * Tests LoggingEvent. * * @author Curt Arnold */public class LoggingEventTest extends TestCase {  /**   * Create LoggingEventTest.   *   * @param name test name.   */  public LoggingEventTest(final String name) {    super(name);  }  /**   * Serialize a simple logging event and check it against   * a witness.   * @throws Exception if exception during test.   */  public void testSerializationSimple() throws Exception {    Logger root = Logger.getRootLogger();    LoggingEvent event =      new LoggingEvent(        root.getClass().getName(), root, Level.INFO, "Hello, world.", null);//    event.prepareForDeferredProcessing();    int[] skip = new int[] { 352, 353, 354, 355, 356 };    SerializationTestHelper.assertSerializationEquals(      "witness/serialization/simple.bin", event, skip, 237);  }  /**   * Serialize a logging event with an exception and check it against   * a witness.   * @throws Exception if exception during test.   *   */  public void testSerializationWithException() throws Exception {    Logger root = Logger.getRootLogger();    Exception ex = new Exception("Don't panic");    LoggingEvent event =      new LoggingEvent(        root.getClass().getName(), root, Level.INFO, "Hello, world.", ex);//    event.prepareForDeferredProcessing();    int[] skip = new int[] { 352, 353, 354, 355, 356 };    SerializationTestHelper.assertSerializationEquals(      "witness/serialization/exception.bin", event, skip, 237);  }  /**   * Serialize a logging event with an exception and check it against   * a witness.   * @throws Exception if exception during test.   *   */  public void testSerializationWithLocation() throws Exception {    Logger root = Logger.getRootLogger();    LoggingEvent event =      new LoggingEvent(        root.getClass().getName(), root, Level.INFO, "Hello, world.", null);    LocationInfo info = event.getLocationInformation();//    event.prepareForDeferredProcessing();    int[] skip = new int[] { 352, 353, 354, 355, 356 };    SerializationTestHelper.assertSerializationEquals(      "witness/serialization/location.bin", event, skip, 237);  }  /**   * Serialize a logging event with ndc.   * @throws Exception if exception during test.   *   */  public void testSerializationNDC() throws Exception {    Logger root = Logger.getRootLogger();    NDC.push("ndc test");    LoggingEvent event =      new LoggingEvent(        root.getClass().getName(), root, Level.INFO, "Hello, world.", null);//    event.prepareForDeferredProcessing();    int[] skip = new int[] { 352, 353, 354, 355, 356 };    SerializationTestHelper.assertSerializationEquals(      "witness/serialization/ndc.bin", event, skip, 237);    }  /**   * Serialize a logging event with mdc.   * @throws Exception if exception during test.   *   */  public void testSerializationMDC() throws Exception {    Logger root = Logger.getRootLogger();    MDC.put("mdckey", "mdcvalue");    LoggingEvent event =      new LoggingEvent(        root.getClass().getName(), root, Level.INFO, "Hello, world.", null);//    event.prepareForDeferredProcessing();    int[] skip = new int[] { 352, 353, 354, 355, 356 };    SerializationTestHelper.assertSerializationEquals(      "witness/serialization/mdc.bin", event, skip, 237);  }  /**   * Deserialize a simple logging event.   * @throws Exception if exception during test.   *   */  public void testDeserializationSimple() throws Exception {    Object obj =      SerializationTestHelper.deserializeStream(        "witness/serialization/simple.bin");    assertTrue(obj instanceof LoggingEvent);    LoggingEvent event = (LoggingEvent) obj;    assertEquals("Hello, world.", event.getMessage());    assertEquals(Level.INFO, event.getLevel());  }  /**   * Deserialize a logging event with an exception.   * @throws Exception if exception during test.   *   */  public void testDeserializationWithException() throws Exception {    Object obj =      SerializationTestHelper.deserializeStream(        "witness/serialization/exception.bin");    assertTrue(obj instanceof LoggingEvent);    LoggingEvent event = (LoggingEvent) obj;    assertEquals("Hello, world.", event.getMessage());    assertEquals(Level.INFO, event.getLevel());  }  /**   * Deserialize a logging event with an exception.   * @throws Exception if exception during test.   *   */  public void testDeserializationWithLocation() throws Exception {    Object obj =      SerializationTestHelper.deserializeStream(        "witness/serialization/location.bin");    assertTrue(obj instanceof LoggingEvent);    LoggingEvent event = (LoggingEvent) obj;    assertEquals("Hello, world.", event.getMessage());    assertEquals(Level.INFO, event.getLevel());  }    /**     * Tests LoggingEvent.fqnOfCategoryClass.     */  public void testFQNOfCategoryClass() {      Category root = Logger.getRootLogger();      Priority info = Level.INFO;      String catName = Logger.class.toString();      LoggingEvent event =        new LoggingEvent(          catName, root, info, "Hello, world.", null);      assertEquals(catName, event.fqnOfCategoryClass);  }    /**     * Tests LoggingEvent.level.     * @deprecated     */  public void testLevel() {      Category root = Logger.getRootLogger();      Priority info = Level.INFO;      String catName = Logger.class.toString();      LoggingEvent event =        new LoggingEvent(          catName, root, 0L,  info, "Hello, world.", null);      Priority error = Level.ERROR;      event.level = error;      assertEquals(Level.ERROR, event.level);  }    /**     * Tests LoggingEvent.getLocationInfo() when no FQCN is specified.     * See bug 41186.     */  public void testLocationInfoNoFQCN() {      Category root = Logger.getRootLogger();	  Priority level = Level.INFO;      LoggingEvent event =        new LoggingEvent(          null, root, 0L,  level, "Hello, world.", null);      LocationInfo info = event.getLocationInformation();	  //	  //  log4j 1.2 returns an object, its layout doesn't check for nulls.	  //  log4j 1.3 returns a null.	  //	  assertNotNull(info);	  if (info != null) {	     assertEquals("?", info.getLineNumber());		 assertEquals("?", info.getClassName());		 assertEquals("?", info.getFileName());		 assertEquals("?", info.getMethodName());	  }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -