1e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes/* 2561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Licensed to the Apache Software Foundation (ASF) under one or more 3561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * contributor license agreements. See the NOTICE file distributed with 4561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * this work for additional information regarding copyright ownership. 5561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * The ASF licenses this file to You under the Apache License, Version 2.0 6561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * (the "License"); you may not use this file except in compliance with 7561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * the License. You may obtain a copy of the License at 8e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * 9561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * http://www.apache.org/licenses/LICENSE-2.0 10e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * 11561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Unless required by applicable law or agreed to in writing, software 12561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * distributed under the License is distributed on an "AS IS" BASIS, 13561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * See the License for the specific language governing permissions and 15561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * limitations under the License. 16561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 17561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 18561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespackage org.apache.harmony.logging.tests.java.util.logging; 19561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 2084bf48564a8560403bd77eee23f7fad63e50340eNeil Fullerimport junit.framework.TestCase; 2184bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller 2284bf48564a8560403bd77eee23f7fad63e50340eNeil Fullerimport org.apache.harmony.logging.tests.java.util.logging.util.EnvironmentHelper; 2384bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller 2484bf48564a8560403bd77eee23f7fad63e50340eNeil Fullerimport java.io.InputStream; 2584bf48564a8560403bd77eee23f7fad63e50340eNeil Fullerimport java.util.Arrays; 26561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.Locale; 27561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.MissingResourceException; 28561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.Properties; 29561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.ResourceBundle; 30561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.logging.Filter; 31561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.logging.Handler; 32561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.logging.Level; 33561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.logging.LogManager; 34561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.logging.LogRecord; 35561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.logging.Logger; 36561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 37561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport tests.util.CallVerificationStack; 38561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 39561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes/** 40561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Test suite for the class java.util.logging.Logger. 41561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 42561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespublic class LoggerTest extends TestCase { 43561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 4484bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller private final static String VALID_RESOURCE_BUNDLE = "bundles/com/android/java/util/logging/res"; 45561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 4684bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller private final static String VALID_RESOURCE_BUNDLE2 = 4784bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller "bundles/com/android/java/util/logging/res2"; 48561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 4984bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller private final static String VALID_RESOURCE_BUNDLE3 = 5084bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller "bundles/com/android/java/util/logging/res3"; 51561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath private final static String INVALID_RESOURCE_BUNDLE = "impossible_not_existing"; 53e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes 5484bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller private final static String LOGGING_CONFIG_RESOURCE = 5584bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller "config/com/android/java/util/logging/logging.config"; 56561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath private final static String VALID_KEY = "LOGGERTEST"; 58561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath private final static String VALID_VALUE = "Test_ZH_CN"; 60561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath private final static String VALID_VALUE2 = "Test_NoLocale2"; 62561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath private Logger sharedLogger = null; 64561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath private Locale oldLocale = null; 66e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes 678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * @see TestCase#setUp() 698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath protected void setUp() throws Exception { 718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath super.setUp(); 728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath oldLocale = Locale.getDefault(); 738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Locale.setDefault(new Locale("zh", "CN")); 748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath sharedLogger = new MockLogger("SharedLogger", VALID_RESOURCE_BUNDLE); 758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath sharedLogger.addHandler(new MockHandler()); 768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 77561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Reset the log manager. 808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath protected void tearDown() throws Exception { 82561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes CallVerificationStack.getInstance().clear(); 838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Locale.setDefault(oldLocale); 84561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes super.tearDown(); 858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /** 888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Constructor for LoggerTest. 898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * 908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * @param arg0 918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public LoggerTest(String arg0) { 938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath super(arg0); 948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test the global logger 988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGlobalLogger() { 1008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Logger.global.getFilter()); 1018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, Logger.global.getHandlers().length); 1028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Logger.global.getLevel()); 1038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("global", Logger.global.getName()); 1048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Logger.global.getParent().getParent()); 1058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Logger.global.getResourceBundle()); 1068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Logger.global.getResourceBundleName()); 1078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(Logger.global.getUseParentHandlers()); 1088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Logger.global, Logger.getLogger("global")); 1098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Logger.global, LogManager.getLogManager() 1108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("global")); 1118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 1138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 1148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test constructor under normal conditions. 1158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * 1168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * TODO: using a series of class loaders to load resource bundles 1178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 1188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testConstructor_Normal() { 1198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockLogger mlog = new MockLogger("myname", VALID_RESOURCE_BUNDLE); 1208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getFilter()); 1218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, mlog.getHandlers().length); 1228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getLevel()); 1238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("myname", mlog.getName()); 1248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getParent()); 1258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath ResourceBundle rb = mlog.getResourceBundle(); 1268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, rb.getString(VALID_KEY)); 1278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(mlog.getResourceBundleName(), VALID_RESOURCE_BUNDLE); 1288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.getUseParentHandlers()); 1298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 1318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 1328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test constructor with null parameters. 1338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 1348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testConstructor_Null() { 1358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockLogger mlog = new MockLogger(null, null); 1368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getFilter()); 1378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, mlog.getHandlers().length); 1388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getLevel()); 1398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getName()); 1408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getParent()); 1418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getResourceBundle()); 1428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getResourceBundleName()); 1438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.getUseParentHandlers()); 1448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 1468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 1478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test constructor with invalid name. 1488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 1498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testConstructor_InvalidName() { 1508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockLogger mlog = new MockLogger("...#$%%^&&()-_+=!@~./,[]{};:'\\\"?|", 1518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath null); 1528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("...#$%%^&&()-_+=!@~./,[]{};:'\\\"?|", mlog.getName()); 1538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 1558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 1568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test constructor with empty name. 1578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 1588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testConstructor_EmptyName() { 1598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockLogger mlog = new MockLogger("", null); 1608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("", mlog.getName()); 1618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 1638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 1648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test constructor with invalid resource bundle name. 1658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 1668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testConstructor_InvalidResourceBundle() { 1678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new MockLogger(null, INVALID_RESOURCE_BUNDLE); 1698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw MissingResourceException!"); 1708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (MissingResourceException e) { 1718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // try empty string 1738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new MockLogger(null, ""); 1758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw MissingResourceException!"); 1768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (MissingResourceException e) { 1778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 1808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 1818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getAnonymousLogger(String resourceBundleName) with valid resource 1828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * bundle. 1838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 1848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetAnonymousLogger_ValidResourceBundle() { 1858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger alog = Logger.getAnonymousLogger(VALID_RESOURCE_BUNDLE); 1868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNotSame(alog, Logger.getAnonymousLogger(VALID_RESOURCE_BUNDLE)); 1878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getFilter()); 1888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, alog.getHandlers().length); 1898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getLevel()); 1908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getName()); 1918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getParent().getParent()); 1928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, alog.getResourceBundle().getString(VALID_KEY)); 1938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(alog.getResourceBundleName(), VALID_RESOURCE_BUNDLE); 1948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(alog.getUseParentHandlers()); 1958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 1978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 1988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getAnonymousLogger(String resourceBundleName) with null resource 1998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * bundle. 2008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 2018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetAnonymousLogger_NullResourceBundle() { 2028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger alog = Logger.getAnonymousLogger(null); 2038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNotSame(alog, Logger.getAnonymousLogger(null)); 2048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getFilter()); 2058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, alog.getHandlers().length); 2068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getLevel()); 2078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getName()); 2088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getParent().getParent()); 2098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getResourceBundle()); 2108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(alog.getResourceBundleName()); 2118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(alog.getUseParentHandlers()); 2128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 2138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 2148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 2158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getAnonymousLogger(String resourceBundleName) with invalid resource 2168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * bundle. 2178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 2188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetAnonymousLogger_InvalidResourceBundle() { 2198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 2208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger.getAnonymousLogger(INVALID_RESOURCE_BUNDLE); 2218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw MissingResourceException!"); 2228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (MissingResourceException e) { 2238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 2248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // try empty name 2258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 2268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger.getAnonymousLogger(""); 2278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw MissingResourceException!"); 2288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (MissingResourceException e) { 2298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 2308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 2318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 2328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 2338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String), getting a logger with no parent. 2348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 2358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLogger_Normal() throws Exception { 2368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // config the level 2378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Properties p = new Properties(); 2388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath p.put("testGetLogger_Normal_ANewLogger.level", "ALL"); 2398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogManager.getLogManager().readConfiguration( 2408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath EnvironmentHelper.PropertiesToInputStream(p)); 2418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 2428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 2438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLogger_Normal_ANewLogger")); 2448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create a new logger 2458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetLogger_Normal_ANewLogger"); 2468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // get an existing logger 2478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log, Logger.getLogger("testGetLogger_Normal_ANewLogger")); 2488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // check it has been registered 2498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log, LogManager.getLogManager().getLogger( 2508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLogger_Normal_ANewLogger")); 2518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 2528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 2538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, log.getHandlers().length); 2548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // check it's set to the preconfigured level 2558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Level.ALL, log.getLevel()); 2568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("testGetLogger_Normal_ANewLogger", log.getName()); 2578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getParent().getParent()); 2588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundle()); 2598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundleName()); 2608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(log.getUseParentHandlers()); 2618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 2628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 2638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 2648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String), getting a logger with invalid level configured. 2658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 2668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLogger_InvalidLevel() throws Exception { 2678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // config the level 2688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Properties p = new Properties(); 2698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath p 2708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .put("testGetLogger_InvalidLevel_ANewLogger.level", 2718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "impossible_level"); 2728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogManager.getLogManager().readConfiguration( 2738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath EnvironmentHelper.PropertiesToInputStream(p)); 2748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 2758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 2768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLogger_InvalidLevel_ANewLogger")); 2778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create a new logger 2788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetLogger_InvalidLevel_ANewLogger"); 2798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // get an existing logger 2808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log, Logger 2818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testGetLogger_InvalidLevel_ANewLogger")); 2828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // check it has been registered 2838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log, LogManager.getLogManager().getLogger( 2848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLogger_InvalidLevel_ANewLogger")); 2858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getLevel()); 2868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 2878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 2888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 2898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String) with null name. 2908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 2918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLogger_Null() { 2928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 2938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger.getLogger(null); 2948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 2958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 2968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 297561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Logger logger = Logger.getLogger("", null); 298561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNull(logger.getResourceBundleName()); 299e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes assertNull(logger.getResourceBundle()); 3008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 3018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 3028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 3038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String) with invalid name. 3048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 3058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLogger_Invalid() { 3068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("...#$%%^&&()-_+=!@~./,[]{};:'\\\"?|"); 3078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("...#$%%^&&()-_+=!@~./,[]{};:'\\\"?|", log.getName()); 3088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 3098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 3108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 3118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String) with empty name. 3128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 3138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLogger_Empty() { 3148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNotNull(LogManager.getLogManager().getLogger("")); 3158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger(""); 3168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log, LogManager.getLogManager().getLogger("")); 3178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 3188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, log.getHandlers().length); 3198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // check it's set to the preconfigured level 3208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Level.INFO, log.getLevel()); 3218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("", log.getName()); 3228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getParent()); 3238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundle()); 3248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundleName()); 3258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(log.getUseParentHandlers()); 3268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 3278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 3288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 3298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String), getting a logger with existing parent. 3308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 3318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLogger_WithParentNormal() { 3328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 3338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLogger_WithParent_ParentLogger")); 3348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create the parent logger 3358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger pLog = Logger.getLogger("testGetLogger_WithParent_ParentLogger", 3368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 3378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath pLog.setLevel(Level.CONFIG); 3388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath pLog.addHandler(new MockHandler()); 3398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath pLog.setFilter(new MockFilter()); 3408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath pLog.setUseParentHandlers(false); 3418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 3428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 3438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLogger_WithParent_ParentLogger.child")); 3448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create the child logger 3458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger 3468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testGetLogger_WithParent_ParentLogger.child"); 3478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 3488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, log.getHandlers().length); 3498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getLevel()); 3508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("testGetLogger_WithParent_ParentLogger.child", log 3518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getName()); 3528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getParent(), pLog); 3538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundle()); 3548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundleName()); 3558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(log.getUseParentHandlers()); 3568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 3578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 3588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // /* 3598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // * Test getLogger(String), getting a logger with existing parent, using 3608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // * abnormal names (containing '.'). 3618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // */ 3628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // public void testGetLogger_WithParentAbnormal() { 3638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // Logger log = Logger.getLogger("."); 3648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // assertSame(log.getParent(), Logger.getLogger("")); 3658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // Logger log2 = Logger.getLogger(".."); 3668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // assertSame(log2.getParent(), Logger.getLogger("")); 3678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // //TODO: a lot more can be tested 3688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // } 3698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 3708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 3718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String), getting a logger with no parent. 3728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 3738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_Normal() throws Exception { 3748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // config the level 3758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Properties p = new Properties(); 3768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath p.put("testGetLoggerWithRes_Normal_ANewLogger.level", "ALL"); 3778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogManager.getLogManager().readConfiguration( 3788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath EnvironmentHelper.PropertiesToInputStream(p)); 3798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 3808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 3818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_Normal_ANewLogger")); 3828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create a new logger 3838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetLoggerWithRes_Normal_ANewLogger", 3848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 3858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // get an existing logger 3868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log, Logger 3878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testGetLoggerWithRes_Normal_ANewLogger")); 3888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // check it has been registered 3898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log, LogManager.getLogManager().getLogger( 3908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_Normal_ANewLogger")); 3918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 3928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 3938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, log.getHandlers().length); 3948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // check it's set to the preconfigured level 3958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Level.ALL, log.getLevel()); 3968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("testGetLoggerWithRes_Normal_ANewLogger", log.getName()); 3978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getParent().getParent()); 3988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, log.getResourceBundle().getString(VALID_KEY)); 3998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getResourceBundleName(), VALID_RESOURCE_BUNDLE); 4008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(log.getUseParentHandlers()); 4018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 4028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 4038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 4048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String) with null parameters. 4058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 4068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_Null() { 4078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger.getLogger("testGetLoggerWithRes_Null_ANewLogger", null); 4088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 4098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger.getLogger(null, VALID_RESOURCE_BUNDLE); 4108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 4118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 4128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 4138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 4148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 4158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 4168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String) with invalid resource bundle. 4178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 4188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_InvalidRes() { 4198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 4208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger.getLogger("", INVALID_RESOURCE_BUNDLE); 4218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw MissingResourceException!"); 4228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (MissingResourceException e) { 4238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 4248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Logger.getLogger("").getResourceBundle()); 4258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Logger.getLogger("").getResourceBundleName()); 4268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // try empty string 4278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 4288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger.getLogger("", ""); 4298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw MissingResourceException!"); 4308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (MissingResourceException e) { 4318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 4328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 4338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 4348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 4358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String) with valid resource bundle, to get an 4368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * existing logger with no associated resource bundle. 4378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 4388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_ExistingLoggerWithNoRes() { 4398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 4408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_ExistingLoggerWithNoRes_ANewLogger")); 4418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create a new logger 4428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log1 = Logger 4438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testGetLoggerWithRes_ExistingLoggerWithNoRes_ANewLogger"); 4448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // get an existing logger 4458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log2 = Logger.getLogger( 4468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_ExistingLoggerWithNoRes_ANewLogger", 4478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 4488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log1, log2); 4498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, log1.getResourceBundle().getString(VALID_KEY)); 4508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log1.getResourceBundleName(), VALID_RESOURCE_BUNDLE); 4518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 4528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 4538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 4548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String) with valid resource bundle, to get an 4558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * existing logger with the same associated resource bundle. 4568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 4578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_ExistingLoggerWithSameRes() { 4588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 4598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_ExistingLoggerWithSameRes_ANewLogger")); 4608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create a new logger 4618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log1 = Logger.getLogger( 4628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_ExistingLoggerWithSameRes_ANewLogger", 4638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 4648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // get an existing logger 4658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log2 = Logger.getLogger( 4668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_ExistingLoggerWithSameRes_ANewLogger", 4678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 4688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log1, log2); 4698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, log1.getResourceBundle().getString(VALID_KEY)); 4708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log1.getResourceBundleName(), VALID_RESOURCE_BUNDLE); 4718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 4728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 4738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 4748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String) with valid resource bundle, to get an 4758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * existing logger with different associated resource bundle. 4768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 4778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_ExistingLoggerWithDiffRes() { 478561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNull(LogManager.getLogManager().getLogger( 479561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes "testGetLoggerWithRes_ExistingLoggerWithDiffRes_ANewLogger")); 480561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // create a new logger 481561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Logger log1 = Logger.getLogger( 482561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes "testGetLoggerWithRes_ExistingLoggerWithDiffRes_ANewLogger", 483561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes VALID_RESOURCE_BUNDLE); 484561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(log1); 485561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // get an existing logger 486561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 487561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Logger.getLogger("testGetLoggerWithRes_ExistingLoggerWithDiffRes_ANewLogger", 488561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes VALID_RESOURCE_BUNDLE2); 489561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("Should throw IllegalArgumentException!"); 490561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 491561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 492561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 493561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 494561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Logger.getLogger("testGetLoggerWithRes_ExistingLoggerWithDiffRes_ANewLogger", null); 495561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("Should throw IllegalArgumentException!"); 496561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 497561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 498561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 499561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 5008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 5018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String) with invalid name. 5028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 5038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_InvalidName() { 5048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger( 5058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "...#$%%^&&()-_+=!@~./,[]{};:'\\\"?|WithRes", 5068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 5078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("...#$%%^&&()-_+=!@~./,[]{};:'\\\"?|WithRes", log 5088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getName()); 5098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 510561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 5118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 5128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String) with empty name. 5138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 5148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_Empty() { 5158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("", VALID_RESOURCE_BUNDLE); 5168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log, LogManager.getLogManager().getLogger("")); 5178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 5188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, log.getHandlers().length); 5198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // check it's set to the preconfigured level 5208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Level.INFO, log.getLevel()); 5218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("", log.getName()); 5228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getParent()); 5238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, log.getResourceBundle().getString(VALID_KEY)); 5248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getResourceBundleName(), VALID_RESOURCE_BUNDLE); 5258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(log.getUseParentHandlers()); 5268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 5278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 5288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 5298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLogger(String, String), getting a logger with existing parent. 5308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 5318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetLoggerWithRes_WithParentNormal() { 5328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 5338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_WithParent_ParentLogger")); 5348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create the parent logger 5358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger pLog = Logger 5368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testGetLoggerWithRes_WithParent_ParentLogger"); 5378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath pLog.setLevel(Level.CONFIG); 5388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath pLog.addHandler(new MockHandler()); 5398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath pLog.setFilter(new MockFilter()); 5408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath pLog.setUseParentHandlers(false); 5418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 5428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(LogManager.getLogManager().getLogger( 5438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_WithParent_ParentLogger.child")); 5448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // create the child logger 5458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger( 5468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testGetLoggerWithRes_WithParent_ParentLogger.child", 5478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 5488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 5498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, log.getHandlers().length); 5508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getLevel()); 5518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("testGetLoggerWithRes_WithParent_ParentLogger.child", log 5528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getName()); 5538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getParent(), pLog); 5548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, log.getResourceBundle().getString(VALID_KEY)); 5558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getResourceBundleName(), VALID_RESOURCE_BUNDLE); 5568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(log.getUseParentHandlers()); 5578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 5588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 5598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 5608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test addHandler(Handler) for a named logger with sufficient privilege. 5618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 5628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testAddHandler_NamedLoggerSufficientPrivilege() { 5638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger 5648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testAddHandler_NamedLoggerSufficientPrivilege"); 5658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h = new MockHandler(); 5668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 5678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h); 5688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 1); 5698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[0], h); 5708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 5718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 5728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 5738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test addHandler(Handler) for a named logger with sufficient privilege, 5748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * add duplicate handlers. 5758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 5768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testAddHandler_NamedLoggerSufficientPrivilegeDuplicate() { 5778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger 5788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testAddHandler_NamedLoggerSufficientPrivilegeDuplicate"); 5798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h = new MockHandler(); 5808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 5818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h); 5828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h); 5838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 2); 5848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[0], h); 5858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[1], h); 5868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 5878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 5888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 5898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test addHandler(Handler) with a null handler. 5908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 5918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testAddHandler_Null() { 5928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testAddHandler_Null"); 5938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 5948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(null); 5958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 5968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 597561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 5988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 5998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 600e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes 601561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 6028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test addHandler(Handler) for an anonymous logger with sufficient 6038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * privilege. 6048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 6058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testAddHandler_AnonyLoggerSufficientPrivilege() { 6068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getAnonymousLogger(); 6078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h = new MockHandler(); 6088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 6098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h); 6108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 1); 6118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[0], h); 6128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 6138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 6148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 6158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test removeHandler(Handler) for a named logger with sufficient privilege, 6168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * remove an existing handler. 6178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 6188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testRemoveHandler_NamedLoggerSufficientPrivilege() { 6198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger 6208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testRemoveHandler_NamedLoggerSufficientPrivilege"); 6218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h = new MockHandler(); 6228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h); 6238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 1); 6248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.removeHandler(h); 6258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 6268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 6278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 6288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 6298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test removeHandler(Handler) for a named logger with sufficient privilege, 6308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * remove a non-existing handler. 6318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 6328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testRemoveHandler_NamedLoggerSufficientPrivilegeNotExisting() { 6338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger 6348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testRemoveHandler_NamedLoggerSufficientPrivilegeNotExisting"); 6358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h = new MockHandler(); 6368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 6378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.removeHandler(h); 6388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 6398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 6408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 6418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 6428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test removeHandler(Handler) with a null handler. 6438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 6448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testRemoveHandler_Null() { 6458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testRemoveHandler_Null"); 6468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.removeHandler(null); 6478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 6488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 6498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 6508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 6518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test removeHandler(Handler) for an anonymous logger with sufficient 6528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * privilege. 6538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 6548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testRemoveHandler_AnonyLoggerSufficientPrivilege() { 6558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getAnonymousLogger(); 6568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h = new MockHandler(); 6578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h); 6588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 1); 6598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.removeHandler(h); 6608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 6618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 6628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 6638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 6648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getHandlers() when there's no handler. 6658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 6668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetHandlers_None() { 6678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetHandlers_None"); 6688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 6698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 6708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 6718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 6728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getHandlers() when there are several handlers. 6738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 6748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetHandlers_Several() { 6758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetHandlers_None"); 6768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 0); 6778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h1 = new MockHandler(); 6788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h2 = new MockHandler(); 6798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockHandler h3 = new MockHandler(); 6808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h1); 6818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h2); 6828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(h3); 6838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 3); 6848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[0], h1); 6858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[1], h2); 6868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[2], h3); 6878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // remove one 6888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.removeHandler(h2); 6898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(log.getHandlers().length, 2); 6908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[0], h1); 6918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getHandlers()[1], h3); 6928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 6938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 6948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 6958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getFilter & setFilter with normal value for a named logger, having 6968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * sufficient privilege. 6978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 6988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetSetFilter_NamedLoggerSufficientPrivilege() { 6998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger 7008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testGetSetFilter_NamedLoggerSufficientPrivilege"); 7018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Filter f = new MockFilter(); 7028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 7048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setFilter(f); 7058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(f, log.getFilter()); 7068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 7078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 7098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getFilter & setFilter with null value, having sufficient privilege. 7108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 7118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetSetFilter_Null() { 7128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetSetFilter_Null"); 7138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 7158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setFilter(null); 7168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 7178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setFilter(new MockFilter()); 7188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setFilter(null); 7198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 7208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 7218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 7238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test setFilter for an anonymous logger with sufficient privilege. 7248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 7258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testSetFilter_AnonyLoggerSufficientPrivilege() { 7268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getAnonymousLogger(); 7278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Filter f = new MockFilter(); 7288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getFilter()); 7298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setFilter(f); 7308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(f, log.getFilter()); 7318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 7328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 7348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLevel & setLevel with normal value for a named logger, having 7358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * sufficient privilege. 7368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 7378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetSetLevel_NamedLoggerSufficientPrivilege() { 7388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger 7398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testGetSetLevel_NamedLoggerSufficientPrivilege"); 7408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getLevel()); 7428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setLevel(Level.CONFIG); 7438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Level.CONFIG, log.getLevel()); 7448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 7458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 7478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getLevel & setLevel with null value, having sufficient privilege. 7488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 7498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetSetLevel_Null() { 7508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetSetLevel_Null"); 7518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getLevel()); 7538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setLevel(null); 7548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getLevel()); 7558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setLevel(Level.CONFIG); 7568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setLevel(null); 7578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getLevel()); 7588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 7598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 7618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test setLevel for an anonymous logger with sufficient privilege. 7628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 7638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testSetLevel_AnonyLoggerSufficientPrivilege() { 7648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getAnonymousLogger(); 7658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getLevel()); 7668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setLevel(Level.CONFIG); 7678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Level.CONFIG, log.getLevel()); 7688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 7698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 7718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getUseParentHandlers & setUseParentHandlers with normal value for a 7728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * named logger, having sufficient privilege. 7738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 7748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetSetUseParentHandlers_NamedLoggerSufficientPrivilege() { 7758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger 7768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("testGetSetUseParentHandlers_NamedLoggerSufficientPrivilege"); 7778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(log.getUseParentHandlers()); 7798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setUseParentHandlers(false); 7808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(log.getUseParentHandlers()); 7818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 7828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 7848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test setUseParentHandlers for an anonymous logger with sufficient 7858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * privilege. 7868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 7878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testSetUseParentHandlers_AnonyLoggerSufficientPrivilege() { 7888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getAnonymousLogger(); 7898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(log.getUseParentHandlers()); 7908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setUseParentHandlers(false); 7918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(log.getUseParentHandlers()); 7928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 7938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 7948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 7958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getParent() for root logger. 7968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 7978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetParent_Root() { 7988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Logger.getLogger("").getParent()); 7998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getParent() for normal named loggers. 8038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetParent_NormalNamed() { 8058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetParent_NormalNamed"); 8068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getParent(), Logger.getLogger("")); 8078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = Logger.getLogger("testGetParent_NormalNamed.child"); 8088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(child.getParent(), log); 8098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child2 = Logger.getLogger("testGetParent_NormalNamed.a.b.c"); 8108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(child2.getParent(), log); 8118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getParent() for anonymous loggers. 8158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetParent_Anonymous() { 8178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Logger.getAnonymousLogger().getParent(), Logger 8188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getLogger("")); 8198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test setParent(Logger) for the mock logger since it is advised not to 8238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * call this method on named loggers. Test normal conditions. 8248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testSetParent_Normal() { 8268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = new MockLogger(null, null); 8278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger(null, null); 8288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getParent()); 8298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setParent(parent); 8308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(log.getParent(), parent); 8318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test setParent(Logger) with null. 8358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testSetParent_Null() { 8378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 8388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath (new MockLogger(null, null)).setParent(null); 8398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 8408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 8418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getName() for normal names. 8468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetName_Normal() { 8488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetName_Normal"); 8498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("testGetName_Normal", log.getName()); 8508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger mlog = new MockLogger("testGetName_Normal", null); 8528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("testGetName_Normal", mlog.getName()); 8538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 854561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 8558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getName() for empty name. 8578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetName_Empty() { 859561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Logger log = Logger.getLogger(""); 8608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("", log.getName()); 8618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger mlog = new MockLogger("", null); 8638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("", mlog.getName()); 8648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getName() for null name. 8688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetName_Null() { 8708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getAnonymousLogger(); 8718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getName()); 8728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger mlog = new MockLogger(null, null); 8748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getName()); 8758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getResourceBundle() when it it not null. 8798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetResourceBundle_Normal() { 8818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetResourceBundle_Normal", 8828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 8838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, log.getResourceBundle().getString(VALID_KEY)); 8848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger mlog = new MockLogger(null, VALID_RESOURCE_BUNDLE); 8868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE, mlog.getResourceBundle().getString(VALID_KEY)); 8878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 8908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getResourceBundle() when it it null. 8918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 8928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetResourceBundle_Null() { 8938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetResourceBundle_Null", null); 8948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundle()); 8958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 8968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger mlog = new MockLogger(null, null); 8978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getResourceBundle()); 8988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 8998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 9018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getResourceBundleName() when it it not null. 9028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 9038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetResourceBundleName_Normal() { 9048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetResourceBundleName_Normal", 9058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE); 9068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_RESOURCE_BUNDLE, log.getResourceBundleName()); 9078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger mlog = new MockLogger(null, null); 9098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getResourceBundleName()); 9108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 9118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 9138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test getResourceBundleName() when it it null. 9148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 9158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testGetResourceBundleName_Null() { 9168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = Logger.getLogger("testGetResourceBundleName_Null", null); 9178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundleName()); 9188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger mlog = new MockLogger(null, null); 9208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getResourceBundleName()); 9218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 9228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 9248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test isLoggable(Level). 9258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 9268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testIsLoggable() { 9278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockLogger mlog = new MockLogger(null, null); 9288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getLevel()); 9298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(mlog.getParent()); 9308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.SEVERE)); 9328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.WARNING)); 9338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.INFO)); 9348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(mlog.isLoggable(Level.CONFIG)); 9358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(mlog.isLoggable(Level.FINE)); 9368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(mlog.isLoggable(Level.ALL)); 9378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.OFF)); 9388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath mlog.setLevel(Level.CONFIG); 9408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.SEVERE)); 9418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.CONFIG)); 9428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(mlog.isLoggable(Level.ALL)); 9438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.OFF)); 9448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath mlog.setLevel(Level.ALL); 9468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.ALL)); 9478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.SEVERE)); 9488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(mlog.isLoggable(Level.OFF)); 9498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath mlog.setLevel(Level.OFF); 9518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(mlog.isLoggable(Level.ALL)); 9528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(mlog.isLoggable(Level.SEVERE)); 9538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(mlog.isLoggable(Level.OFF)); 9548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 9558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 9578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test throwing(String, String, Throwable) with normal values. 9588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 9598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testThrowing_Normal() { 9608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Throwable t = new Throwable(); 9618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 9628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.throwing("sourceClass", "sourceMethod", t); 9638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 9648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 9658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 9668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "THROW"); 9678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 9688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 9698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 9708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 9718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 9728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 9738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters(), null); 9748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), t); 9758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 9778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.throwing("sourceClass", "sourceMethod", t); 9788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 9798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 9808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 9828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test throwing(String, String, Throwable) with null values. 9838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 9848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testThrowing_Null() { 9858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 9868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 9878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 9888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 9898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 9908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINER); 9918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.throwing(null, null, null); 9928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 9938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 9948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 9958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "THROW"); 9968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 9978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 9988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 9998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 10008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 10018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters(), null); 10028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 10038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 10048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 10058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 10068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test entering(String, String) with normal values. 10078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 10088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testEntering_StringString_Normal() { 10098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 10108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.entering("sourceClass", "sourceMethod"); 10118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 10128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 10138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 10148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "ENTRY"); 10158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 10168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 10178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 10188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 10198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 10208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 10218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters(), null); 10228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 10238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 10248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 10258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.entering("sourceClass", "sourceMethod"); 10268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 10278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 10288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 10298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 10308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test entering(String, String) with null values. 10318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 10328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testEntering_StringString_Null() { 10338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 10348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 10358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 10368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 10378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 10388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINER); 10398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.entering(null, null); 10408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 10418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 10428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 10438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "ENTRY"); 10448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 10458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 10468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 10478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 10488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 10498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters(), null); 10508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 1051561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 1052561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 10538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 10548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test entering(String, String, Object) with normal values. 10558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 10568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testEntering_StringStringObject_Normal() { 10578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object param = new Object(); 10588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 10598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.entering("sourceClass", "sourceMethod", param); 10608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 10618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 10628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 10638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "ENTRY {0}"); 10648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 10658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 10668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 10678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 10688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 10698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 10708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters()[0], param); 10718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 10728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 10738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 10748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 10758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.entering("sourceClass", "sourceMethod", param); 10768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 10778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 10788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 10798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 10808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test entering(String, String, Object) with null values. 10818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 10828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testEntering_StringStringObject_Null() { 10838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 10848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 10858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 10868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 10878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 10888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINER); 10898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.entering(null, null, (Object) null); 10908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 10918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 10928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 10938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "ENTRY {0}"); 10948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 10958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 10968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 10978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 10988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 10998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getParameters().length, 1); 11008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()[0]); 11018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 11028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 11038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 11048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 11058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test entering(String, String, Object[]) with normal values. 11068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 11078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testEntering_StringStringObjects_Normal() { 11088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object[] params = new Object[2]; 11098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[0] = new Object(); 11108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[1] = new Object(); 11118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 11128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.entering("sourceClass", "sourceMethod", params); 11138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 11148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 11158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 11168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "ENTRY {0} {1}"); 11178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 11188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 11198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 11208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 11218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 11228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 11238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters()[0], params[0]); 11248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters()[1], params[1]); 11258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(2, r.getParameters().length); 11268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 11278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 11288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 11298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.entering("sourceClass", "sourceMethod", params); 11308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 11318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 11328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 11338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 11348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test entering(String, String, Object[]) with null class name and method 11358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * name and empty parameter array. 11368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 11378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testEntering_StringStringObjects_NullEmpty() { 11388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 11398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 11408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 11418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 11428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 11438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINER); 11448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.entering(null, null, new Object[0]); 11458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 11468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 11478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 11488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "ENTRY"); 11498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 11508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 11518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 11528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 11538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 11548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(0, r.getParameters().length); 11558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 11568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 11578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 11588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 11598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test entering(String, String, Object[]) with null values with appropriate 11608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * logging level set. 11618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 11628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testEntering_StringStringObjects_Null() { 11638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath sharedLogger.setLevel(Level.FINER); 11648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath sharedLogger.entering(null, null, (Object[]) null); 11658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // regression test for Harmony-1265 11668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 11678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 11688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(sharedLogger.getName(), r.getLoggerName()); 11698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("ENTRY", r.getMessage()); 11708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(sharedLogger.getResourceBundleName(), r 11718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 11728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(sharedLogger.getResourceBundle(), r.getResourceBundle()); 11738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getSourceClassName()); 11748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getSourceMethodName()); 11758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(Level.FINER, r.getLevel()); 11768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 11778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getThrown()); 11788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 11798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 11808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 11818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test entering(String, String, Object[]) with null values with 11828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * inappropriate logging level set. 11838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 11848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testEntering_StringStringObjects_NullDisabled() { 11858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 11868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.entering(null, null, (Object[]) null); 11878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 11888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 11898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 11908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 11918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test exiting(String, String) with normal values. 11928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 11938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testExiting_StringString_Normal() { 11948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 11958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.exiting("sourceClass", "sourceMethod"); 11968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 11978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 11988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 11998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "RETURN"); 12008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 12018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 12028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 12038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 12048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 12058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 12068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 12078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 12088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 12098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 12108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.exiting("sourceClass", "sourceMethod"); 12118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 12128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 12138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 12148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 12158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test exiting(String, String) with null values. 12168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 12178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testExiting_StringString_Null() { 12188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 12198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 12208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 12218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 12228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 12238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINER); 12248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.exiting(null, null); 12258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 12268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 12278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 12288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "RETURN"); 12298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 12308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 12318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 12328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 12338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 12348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters(), null); 12358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 12368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 12378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 12388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 12398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test exiting(String, String, Object) with normal values. 12408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 12418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testExiting_StringStringObject_Normal() { 12428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object param = new Object(); 12438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 12448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.exiting("sourceClass", "sourceMethod", param); 12458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 12468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 12478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 12488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "RETURN {0}"); 12498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 12508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 12518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 12528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 12538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 12548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 12558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getParameters()[0], param); 12568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 12578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 12588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 12598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 12608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.exiting("sourceClass", "sourceMethod", param); 12618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 12628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 12638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 12648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 12658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test exiting(String, String, Object) with null values. 12668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 12678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testExiting_StringStringObject_Null() { 12688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 12698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 12708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 12718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 12728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 12738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINER); 12748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.exiting(null, null, (Object) null); 12758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 12768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 12778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 12788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "RETURN {0}"); 12798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 12808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 12818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 12828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 12838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 12848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getParameters().length, 1); 12858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()[0]); 12868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 12878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 12888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 12898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 12908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test config(String) with normal values. 12918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 12928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testConfig_Normal() { 12938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.CONFIG); 12948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.config("config msg"); 12958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 12968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 12978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 12988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "config msg"); 12998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 13008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 13018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 13028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 13038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 13048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.CONFIG); 13058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 13068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 13078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 13098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.config("config again"); 13108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 13118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 13128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 13148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test config(String) with null values. 13158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 13168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testConfig_Null() { 13178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 13188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 13198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 13208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 13218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.CONFIG); 13238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.config(null); 13248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 13258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 13268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 13278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 13288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 13298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 13308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 13318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 13328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.CONFIG); 13338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 13348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 13358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 13378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.config(null); 13388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 13398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 13408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 13428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test fine(String) with normal values. 13438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 13448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testFine_Normal() { 13458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 13468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.fine("fine msg"); 13478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 13488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 13498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 13508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 13518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "fine msg"); 13528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 13538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 13548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 13558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 13568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINE); 13578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 13588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 13598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.CONFIG); 13618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.fine("fine again"); 13628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 13638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 13648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 13668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test fine(String) with null values. 13678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 13688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testFine_Null() { 13698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 13708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 13718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 13728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 13738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINE); 13758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.fine(null); 13768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 13778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 13788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 13798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 13808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 13818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 13828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 13838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 13848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINE); 13858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 13868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 13878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.CONFIG); 13898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.fine(null); 13908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 13918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 13928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 13938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 13948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test finer(String) with normal values. 13958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 13968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testFiner_Normal() { 13978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 13988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.finer("finer msg"); 13998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 14008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 14018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 14028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "finer msg"); 14038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 14048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 14058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 14068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 14078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 14088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 14098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 14108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 14118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 14138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.finer("finer again"); 14148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 14158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 14168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 14188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test finer(String) with null values. 14198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 14208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testFiner_Null() { 14218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 14228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 14238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 14248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 14258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINER); 14278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.finer(null); 14288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 14298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 14308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 14318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 14328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 14338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 14348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 14358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 14368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINER); 14378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 14388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 14398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINE); 14418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.finer(null); 14428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 14438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 14448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 14468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test finest(String) with normal values. 14478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 14488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testFinest_Normal() { 14498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINEST); 14508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.finest("finest msg"); 14518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 14528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 14538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 14548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "finest msg"); 14558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 14568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 14578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 14588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 14598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 14608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINEST); 14618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 14628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 14638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 14658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.finest("finest again"); 14668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 14678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 14688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 14708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test finest(String) with null values. 14718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 14728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testFinest_Null() { 14738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 14748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 14758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 14768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 14778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.FINEST); 14798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.finest(null); 14808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 14818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 14828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 14838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 14848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 14858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 14868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 14878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 14888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINEST); 14898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 14908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 14918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.FINER); 14938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.finest(null); 14948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 14958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 14968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 14978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 14988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test info(String) with normal values. 14998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 15008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testInfo_Normal() { 15018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 15028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.info("info msg"); 15038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 15048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 15058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 15068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "info msg"); 15078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 15088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 15098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 15108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 15118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 15128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 15138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 15148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 15158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.WARNING); 15178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.info("info again"); 15188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 15198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 15208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 15228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test info(String) with null values. 15238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 15248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testInfo_Null() { 15258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 15268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 15278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 15288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 15298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 15318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.info(null); 15328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 15338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 15348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 15358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 15368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 15378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 15388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 15398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 15408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 15418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 15428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 15438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.WARNING); 15458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.info(null); 15468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 15478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 15488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 15508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test warning(String) with normal values. 15518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 15528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testWarning_Normal() { 15538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.WARNING); 15548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.warning("warning msg"); 15558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 15568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 15578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 15588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "warning msg"); 15598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 15608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 15618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 15628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 15638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 15648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.WARNING); 15658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 15668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 15678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.SEVERE); 15698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.warning("warning again"); 15708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 15718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 15728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 15748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test warning(String) with null values. 15758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 15768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testWarning_Null() { 15778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 15788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 15798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 15808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 15818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.WARNING); 15838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.warning(null); 15848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 15858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 15868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 15878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 15888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 15898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 15908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 15918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 15928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.WARNING); 15938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 15948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 15958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 15968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.SEVERE); 15978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.warning(null); 15988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 15998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 16008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 16028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test severe(String) with normal values. 16038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 16048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testSevere_Normal() { 16058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.SEVERE); 16068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.severe("severe msg"); 16078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 16088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 16098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 16108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "severe msg"); 16118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 16128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 16138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 16148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 16158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 16168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.SEVERE); 16178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 16188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 16198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 16218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.severe("severe again"); 16228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 16238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 16248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 16268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test severe(String) with null values. 16278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 16288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testSevere_Null() { 16298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 16308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 16318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 16328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 16338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.SEVERE); 16358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.severe(null); 16368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 16378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 16388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 16398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 16408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 16418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 16428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 16438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 16448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.SEVERE); 16458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 16468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 16478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 16498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.severe(null); 16508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 16518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 16528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 16548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String) with normal values. 16558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 16568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelString_Normal() { 16578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 16588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.INFO, "log(Level, String) msg"); 16598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 16608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 16618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 16628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "log(Level, String) msg"); 16638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 16648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 16658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 16668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 16678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 16688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 16698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 16708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 16718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.CONFIG, "log(Level, String) msg"); 16738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 16748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 16758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.OFF, "log(Level, String) msg"); 16768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 16778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 16788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 16808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String) with null message. 16818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 16828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelString_NullMsg() { 16838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 16848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 16858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 16868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 16878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 16888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 16898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(Level.INFO, null); 16908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 16918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 16928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 16938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 16948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 16958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 16968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 16978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 16988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 16998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 17008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 17018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 17028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 17038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 17048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String) with null level. 17058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 17068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelString_NullLevel() { 17078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 17088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 17098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(null, "log(Level, String) msg"); 17108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 17118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 17128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 17138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 17148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 17158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 17168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Object) with normal values. 17178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 17188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringObject_Normal() { 17198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object param = new Object(); 17208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 17218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.INFO, "log(Level, String, Object) msg", 17228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath param); 17238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 17248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 17258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 17268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "log(Level, String, Object) msg"); 17278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 17288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 17298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 17308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 17318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 17328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 17338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 17348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(param, r.getParameters()[0]); 17358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 17368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 17378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.CONFIG, "log(Level, String, Object) msg", 17388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath param); 17398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 17408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 17418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.OFF, "log(Level, String, Object) msg", 17428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath param); 17438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 17448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 17458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 17468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 17478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Object) with null message and object. 17488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 17498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringObject_NullMsgObj() { 17508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 17518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 17528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 17538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 17548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 17558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 17568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(Level.INFO, null, (Object) null); 17578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 17588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 17598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 17608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 17618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 17628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 17638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 17648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 17658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 17668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 17678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()[0]); 17688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 17698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 17708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 17718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 17728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Object) with null level. 17738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 17748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringObject_NullLevel() { 17758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 17768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 17778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(null, "log(Level, String, Object) msg", 17788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Object()); 17798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 17808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 17818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 17828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 17838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 17848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 17858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Object[]) with normal values. 17868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 17878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringObjects_Normal() { 17888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object[] params = new Object[2]; 17898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[0] = new Object(); 17908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[1] = new Object(); 17918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 17928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.INFO, "log(Level, String, Object[]) msg", 17938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params); 17948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 17958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 17968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 17978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "log(Level, String, Object[]) msg"); 17988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 17998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 18008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 18018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 18028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 18038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 18048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(2, r.getParameters().length); 18058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(params[0], r.getParameters()[0]); 18068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(params[1], r.getParameters()[1]); 18078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 18088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 18098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.CONFIG, "log(Level, String, Object[]) msg", 18108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params); 18118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 18128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 18138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.OFF, "log(Level, String, Object[]) msg", 18148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params); 18158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 18168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 18178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 18188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 18198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Object[]) with null message and object. 18208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 18218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringObjects_NullMsgObj() { 18228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 18238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 18248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 18258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 18268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 18278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 18288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(Level.INFO, null, (Object[]) null); 18298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 18308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 18318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 18328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 18338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 18348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 18358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 18368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 18378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 18388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 18398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 18408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 18418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 18428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 18438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Object[]) with null level. 18448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 18458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringObjects_NullLevel() { 18468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 18478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 18488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(null, "log(Level, String, Object[]) msg", 18498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Object[0]); 18508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 18518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 18528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 18538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 18548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 18558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 18568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Throwable) with normal values. 18578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 18588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringThrowable_Normal() { 18598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Throwable t = new Throwable(); 18608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 18618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.INFO, "log(Level, String, Throwable) msg", 18628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath t); 18638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 18648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 18658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 18668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "log(Level, String, Throwable) msg"); 18678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 18688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 18698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 18708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 18718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 18728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 18738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 18748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), t); 18758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 18768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(Level.CONFIG, 18778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "log(Level, String, Throwable) msg", t); 18788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 18798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 18808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger 18818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .log(Level.OFF, "log(Level, String, Throwable) msg", t); 18828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 18838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 18848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 18858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 18868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Throwable) with null message and throwable. 18878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 18888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringThrowable_Null() { 18898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 18908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 18918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 18928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 18938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 18948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 18958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(Level.INFO, null, (Throwable) null); 18968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 18978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 18988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 18998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 19008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 19018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 19028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 19038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 19048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 19058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 19068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 19078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 19088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 19098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 19108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(Level, String, Throwable) with null level. 19118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 19128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LevelStringThrowable_NullLevel() { 19138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 19148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 19158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(null, "log(Level, String, Throwable) msg", 19168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Throwable()); 19178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 19188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 19198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 19208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 19218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 19228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 19238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String) with normal values. 19248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 19258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringString_Normal() { 19268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 19278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.INFO, "sourceClass", "sourceMethod", 19288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String) msg"); 19298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 19308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 19318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 19328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "logp(Level, String, String, String) msg"); 19338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 19348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 19358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 19368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 19378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 19388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 19398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 19408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 19418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 19428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.CONFIG, "sourceClass", "sourceMethod", 19438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String) msg"); 19448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 19458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 19468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.OFF, "sourceClass", "sourceMethod", 19478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String) msg"); 19488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 19498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 19508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 19518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 19528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String) with null message. 19538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 19548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringString_NullMsg() { 19558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 19568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 19578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 19588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 19598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 19608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 19618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.logp(Level.INFO, null, null, null); 19628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 19638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 19648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 19658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 19668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 19678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 19688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 19698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 19708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 19718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 19728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 19738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 19748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 19758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 19768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String) with null level. 19778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 19788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringString_NullLevel() { 19798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 19808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 19818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(null, "sourceClass", "sourceMethod", 19828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String) msg"); 19838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 19848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 19858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 19868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 19878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 19888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 19898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Object) with normal values. 19908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 19918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringStringObject_Normal() { 19928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object param = new Object(); 19938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 19948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.INFO, "sourceClass", "sourceMethod", 19958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object) msg", param); 19968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 19978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 19988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 19998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 20008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object) msg"); 20018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 20028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 20038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 20048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 20058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 20068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 20078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 20088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(param, r.getParameters()[0]); 20098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 20108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 20118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.CONFIG, "sourceClass", "sourceMethod", 20128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object) msg", param); 20138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 20148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 20158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.OFF, "sourceClass", "sourceMethod", 20168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object) msg", param); 20178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 20188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 20198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 20208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 20218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Object) with null message and 20228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * object. 20238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 20248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringStringObject_NullMsgObj() { 20258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 20268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 20278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 20288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 20298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 20308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 20318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.logp(Level.INFO, null, null, null, (Object) null); 20328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 20338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 20348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 20358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 20368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 20378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 20388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 20398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 20408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 20418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 20428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()[0]); 20438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 20448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 20458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 20468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 20478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Object) with null level. 20488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 20498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringStringObject_NullLevel() { 20508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 20518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 20528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(null, "sourceClass", "sourceMethod", 20538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object) msg", 20548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Object()); 20558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 20568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 20578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 20588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 20598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 20608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 20618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Object[]) with normal values. 20628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 20638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringStringObjects_Normal() { 20648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object[] params = new Object[2]; 20658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[0] = new Object(); 20668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[1] = new Object(); 20678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 20688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.INFO, "sourceClass", "sourceMethod", 20698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object[]) msg", params); 20708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 20718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 20728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 20738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 20748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object[]) msg"); 20758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 20768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 20778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 20788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 20798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 20808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 20818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(2, r.getParameters().length); 20828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(params[0], r.getParameters()[0]); 20838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(params[1], r.getParameters()[1]); 20848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 20858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 20868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.CONFIG, "sourceClass", "sourceMethod", 20878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object[]) msg", params); 20888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 20898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 20908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.OFF, "sourceClass", "sourceMethod", 20918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object[]) msg", params); 20928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 20938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 20948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 20958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 20968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Object[]) with null message and 20978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * object. 20988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 20998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringStringObjects_NullMsgObj() { 21008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 21018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 21028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 21038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 21048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 21058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 21068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.logp(Level.INFO, null, null, null, (Object[]) null); 21078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 21088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 21098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 21108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 21118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 21128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 21138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 21148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 21158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 21168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 21178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 21188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 21198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 21208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 21218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Object[]) with null level. 21228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 21238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringStringObjects_NullLevel() { 21248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 21258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 21268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(null, "sourceClass", "sourceMethod", 21278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Object[]) msg", 21288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Object[0]); 21298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 21308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 21318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 21328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 21338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 21348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 21358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Throwable) with normal values. 21368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 21378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringStringThrowable_Normal() { 21388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Throwable t = new Throwable(); 21398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 21408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.INFO, "sourceClass", "sourceMethod", 21418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Throwable) msg", t); 21428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 21438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 21448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 21458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 21468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Throwable) msg"); 21478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), this.sharedLogger 21488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .getResourceBundleName()); 21498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), this.sharedLogger.getResourceBundle()); 21508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 21518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 21528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 21538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 21548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), t); 21558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 21568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.CONFIG, "sourceClass", "sourceMethod", 21578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Throwable) msg", t); 21588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 21598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 21608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(Level.OFF, "sourceClass", "sourceMethod", 21618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logp(Level, String, String, String, Throwable) msg", t); 21628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 21638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 21648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 21658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 21668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Throwable) with null message and 21678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * throwable. 21688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 21698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringTStringStringhrowable_Null() { 21708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 21718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 21728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 21738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 21748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 21758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 21768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.logp(Level.INFO, null, null, null, (Throwable) null); 21778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 21788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 21798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), child.getName()); 21808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 21818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), parent.getResourceBundleName()); 21828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), parent.getResourceBundle()); 21838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 21848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 21858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 21868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 21878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 21888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 21898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 21908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 21918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logp(Level, String, String, String, Throwable) with null level. 21928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 21938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogp_LevelStringStringStringThrowable_NullLevel() { 21948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 21958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 21968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logp(null, "sourceClass", "sourceMethod", 21978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "log(Level, String, String, String, Throwable) msg", 21988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Throwable()); 21998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 22008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 22018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 22028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 22038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 22048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 22058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String) with normal values. 22068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 22078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringString_Normal() { 22088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 22098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.INFO, "sourceClass", "sourceMethod", 22108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 22118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 22128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 22138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 22148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 22158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 22168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 22178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), VALID_RESOURCE_BUNDLE2); 22188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(VALID_VALUE2, r.getResourceBundle().getString(VALID_KEY)); 22198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 22208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 22218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 22228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 22238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 22248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 22258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.CONFIG, "sourceClass", "sourceMethod", 22268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 22278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 22288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 22298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 22308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.OFF, "sourceClass", "sourceMethod", 22318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 22328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 22338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 22348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 22358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 22368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 22378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String) with null message. 22388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 22398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringString_NullMsg() { 22408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 22418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.INFO, null, null, null, null); 22428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 22438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 22448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 22458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 22468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 22478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 22488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 22498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 22508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 22518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 22528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 22538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 22548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 22558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String) with null level. 22568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 22578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringString_NullLevel() { 22588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 22598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 22608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(null, "sourceClass", "sourceMethod", 22618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 22628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 22638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 22648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 22658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 22668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 22678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 22688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 22698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String) with invalid resource 22708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * bundle. 22718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 22728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringString_InvalidRes() { 22738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.ALL); 22748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.ALL, "sourceClass", "sourceMethod", 22758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath INVALID_RESOURCE_BUNDLE, 22768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 22778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 22788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 22798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 22808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 22818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 22828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), INVALID_RESOURCE_BUNDLE); 22838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), null); 22848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 22858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 22868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.ALL); 22878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 22888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 22898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 22908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 22918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 22928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Object) with normal 22938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * values. 22948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 22958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringObject_Normal() { 22968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object param = new Object(); 22978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 22988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.INFO, "sourceClass", "sourceMethod", 22998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 23008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object) msg", 23018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath param); 23028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 23038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 23048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 23058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 23068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object) msg"); 23078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), VALID_RESOURCE_BUNDLE2); 23088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 23098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 23108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 23118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 23128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(param, r.getParameters()[0]); 23138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 23148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 23158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.CONFIG, "sourceClass", "sourceMethod", 23168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 23178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object) msg", 23188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath param); 23198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 23208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 23218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.OFF, "sourceClass", "sourceMethod", 23228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 23238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object) msg", 23248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath param); 23258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 23268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 23278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 23288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 23298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Object) with null 23308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * message and object. 23318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 23328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringObject_NullMsgObj() { 23338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 23348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.INFO, null, null, null, null, 23358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath (Object) null); 23368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 23378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 23388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 23398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 23408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 23418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 23428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 23438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 23448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 23458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()[0]); 23468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 23478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 23488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 23498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 23508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Object) with null 23518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * level. 23528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 23538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringObject_NullLevel() { 23548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 23558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 23568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(null, "sourceClass", "sourceMethod", 23578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 23588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object) msg", 23598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Object()); 23608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 23618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 23628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 23638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 23648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 23658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 23668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Object) with invalid 23678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * resource bundle. 23688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 23698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringObject_InvalidRes() { 23708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object param = new Object(); 23718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.ALL); 23728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.ALL, "sourceClass", "sourceMethod", 23738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath INVALID_RESOURCE_BUNDLE, 23748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg", param); 23758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 23768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 23778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 23788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 23798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 23808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), INVALID_RESOURCE_BUNDLE); 23818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), null); 23828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 23838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 23848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.ALL); 23858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(1, r.getParameters().length); 23868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(param, r.getParameters()[0]); 23878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 23888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 23898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 23908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 23918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Object[]) with normal 23928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * values. 23938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 23948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringObjects_Normal() { 23958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object[] params = new Object[2]; 23968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[0] = new Object(); 23978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[1] = new Object(); 23988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 23998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.INFO, "sourceClass", "sourceMethod", 24008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 24018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object[]) msg", 24028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params); 24038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 24048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 24058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 24068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 24078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object[]) msg"); 24088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), VALID_RESOURCE_BUNDLE2); 24098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 24108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 24118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 24128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(2, r.getParameters().length); 24138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(params[0], r.getParameters()[0]); 24148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(params[1], r.getParameters()[1]); 24158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 24168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 24178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.CONFIG, "sourceClass", "sourceMethod", 24188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 24198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object[]) msg", 24208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params); 24218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 24228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 24238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.OFF, "sourceClass", "sourceMethod", 24248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 24258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object[]) msg", 24268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params); 24278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 24288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 24298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 24308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 24318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Object[]) with null 24328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * message and object. 24338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 24348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringObjects_NullMsgObj() { 24358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 24368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.INFO, null, null, null, null, 24378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath (Object[]) null); 24388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 24398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 24408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 24418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 24428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 24438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 24448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 24458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 24468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 24478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 24488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 24498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 24508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 24518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Object[]) with null 24528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * level. 24538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 24548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringObjects_NullLevel() { 24558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 24568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 24578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger 24588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .logrb( 24598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath null, 24608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "sourceClass", 24618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "sourceMethod", 24628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 24638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Object[]) msg", 24648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Object[0]); 24658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 24668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 24678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 24688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 24698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 24708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 24718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Object[]) with invalid 24728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * resource bundle. 24738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 24748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringObjects_InvalidRes() { 24758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Object[] params = new Object[2]; 24768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[0] = new Object(); 24778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath params[1] = new Object(); 24788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.ALL); 24798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.ALL, "sourceClass", "sourceMethod", 24808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath INVALID_RESOURCE_BUNDLE, 24818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg", params); 24828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 24838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 24848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 24858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 24868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 24878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), INVALID_RESOURCE_BUNDLE); 24888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), null); 24898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 24908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 24918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.ALL); 24928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(2, r.getParameters().length); 24938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(params[0], r.getParameters()[0]); 24948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(params[1], r.getParameters()[1]); 24958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 24968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 24978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 24988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 24998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Throwable) with normal 25008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * values. 25018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 25028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringThrowable_Normal() { 25038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Throwable t = new Throwable(); 25048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 25058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.parse("1611"), "sourceClass", 25068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "sourceMethod", VALID_RESOURCE_BUNDLE2, 25078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Throwable) msg", 25088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath t); 25098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 25108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 25118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 25128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 25138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Throwable) msg"); 25148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), VALID_RESOURCE_BUNDLE2); 25158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 25168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 25178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.parse("1611")); 25188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 25198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), t); 25208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(Level.parse("1611").getResourceBundleName()); 25218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 25228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.CONFIG, "sourceClass", "sourceMethod", 25238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 25248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Throwable) msg", 25258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath t); 25268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 25278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 25288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.OFF, "sourceClass", "sourceMethod", 25298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 25308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String, Throwable) msg", 25318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath t); 25328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 25338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 25348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 25358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 25368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Throwable) with null 25378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * message and throwable. 25388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 25398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringTStringStringhrowable_NullMsgObj() { 25408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 25418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.INFO, null, null, null, null, 25428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath (Throwable) null); 25438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 25448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 25458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 25468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getMessage()); 25478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 25488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 25498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 25508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 25518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 25528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 25538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 25548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 25558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 25568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Throwable) with null 25578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * level. 25588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 25598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringThrowable_NullLevel() { 25608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // this.sharedLogger.setLevel(Level.OFF); 25618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 25628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger 25638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .logrb( 25648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath null, 25658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "sourceClass", 25668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "sourceMethod", 25678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2, 25688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "log(Level, String, String, String, String, Throwable) msg", 25698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath new Throwable()); 25708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 25718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 25728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 25738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 25748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 25758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 25768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test logrb(Level, String, String, String, String, Throwable) with invalid 25778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * resource bundle. 25788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 25798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLogrb_LevelStringStringStringThrowable_InvalidRes() { 25808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Throwable t = new Throwable(); 25818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.ALL); 25828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.logrb(Level.ALL, "sourceClass", "sourceMethod", 25838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath INVALID_RESOURCE_BUNDLE, 25848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg", t); 25858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 25868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 25878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), this.sharedLogger.getName()); 25888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 25898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "logrb(Level, String, String, String, String) msg"); 25908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), INVALID_RESOURCE_BUNDLE); 25918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundle(), null); 25928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), "sourceClass"); 25938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), "sourceMethod"); 25948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.ALL); 25958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 25968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), t); 25978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 25988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 25998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 26008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(LogRecord) for a normal log record. Meanwhile the logger has an 26018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * appropriate level, no filter, no parent. 26028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 26038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LogRecord_AppropriateLevelNoFilterNoParent() { 26048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.INFO, 26058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testLog_LogRecord_AppropriateLevelNoFilterNoParent"); 26068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 26088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(r); 26098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 26118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 26128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), null); 26138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 26148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testLog_LogRecord_AppropriateLevelNoFilterNoParent"); 26158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 26168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 26178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 26188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 26198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 26208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 26218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 26228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 26248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(LogRecord) with null log record. 26258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 26268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LogRecord_Null() { 26278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 26288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 26298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(null); 26308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw NullPointerException!"); 26318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (NullPointerException e) { 26328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 26338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 26348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 26368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(LogRecord) for a normal log record. Meanwhile the logger has an 26378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * inappropriate level, no filter, no parent. 26388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 26398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LogRecord_InppropriateLevelNoFilterNoParent() { 26408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.INFO, 26418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testLog_LogRecord_InppropriateLevelNoFilterNoParent"); 26428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.WARNING); 26448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(r); 26458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 26468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath r.setLevel(Level.OFF); 26488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.OFF); 26498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(r); 26508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 26518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 26528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 26548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(LogRecord) for a normal log record. Meanwhile the logger has an 26558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * appropriate level, a filter that accepts the fed log record, no parent. 26568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 26578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LogRecord_AppropriateLevelTrueFilterNoParent() { 26588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.INFO, 26598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testLog_LogRecord_AppropriateLevelTrueFilterNoParent"); 26608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 26628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setFilter(new MockTrueFilter()); 26638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(r); 26648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // pop twice, one pushed by mock handler, one by true mock filter 26668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 26678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 26688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 26698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), null); 26718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 26728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testLog_LogRecord_AppropriateLevelTrueFilterNoParent"); 26738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 26748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 26758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 26768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 26778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 26788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 26798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 26808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 26828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test log(LogRecord) for a normal log record. Meanwhile the logger has an 26838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * appropriate level, a filter that rejects the fed log record, no parent. 26848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 26858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_LogRecord_AppropriateLevelFalseFilterNoParent() { 26868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.INFO, 26878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testLog_LogRecord_AppropriateLevelFalseFilterNoParent"); 26888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setLevel(Level.INFO); 26908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.setFilter(new MockFilter()); 26918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(r); 26928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // pop only once, pushed by mock filter 26948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 26958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 26968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 26978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), null); 26988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), 26998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "testLog_LogRecord_AppropriateLevelFalseFilterNoParent"); 27008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 27018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 27028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 27038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 27048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 27058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 27068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 27078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 27098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test that the parent's handler is notified for a new log record when 27108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * getUseParentHandlers() is true. 27118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 27128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_ParentInformed() { 27138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", VALID_RESOURCE_BUNDLE); 27148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockParentLogger("parentLogger", 27158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2); 27168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 27188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 27198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.INFO); 27208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.addHandler(new MockHandler()); 27218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.INFO, "testLog_ParentInformed"); 27228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 27238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(child.getUseParentHandlers()); 27248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // pop only once, pushed by the parent logger's handler, not by the 27258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // parent itself! 27268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 27278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 27288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), null); 27298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "testLog_ParentInformed"); 27308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 27318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 27328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 27338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.INFO); 27348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 27358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 27368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // set the child logger to disabling level 27388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.SEVERE); 27398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 27408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 27418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // set the parent logger to disabling level 27438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 27448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.SEVERE); 27458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 27468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 27478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 27488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // set the child logger off 27508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.OFF); 27518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 27528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 27538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // set the record off 27558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath r.setLevel(Level.OFF); 27568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 27578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 27588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 27598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 27618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test that the ancestor's handler is notified for a new log record when 27628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * getUseParentHandlers() is true. 27638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 27648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_AncestorInformed() { 27658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", VALID_RESOURCE_BUNDLE); 27668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockParentLogger("parentLogger", 27678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2); 27688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger ancestor = new MockParentLogger("ancestorLogger", 27698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE3); 27708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 27728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setParent(ancestor); 27738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 27748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.INFO); 27758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath ancestor.setLevel(Level.OFF); 27768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath ancestor.addHandler(new MockHandler()); 27778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.INFO, "testLog_AncestorInformed"); 27788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 27798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(child.getUseParentHandlers()); 27808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(parent.getUseParentHandlers()); 27818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // pop only once, pushed by the ancestor's logger's handler, not by the 27828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // parent itself! 27838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 27848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 27858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // set parent's level to a disabling one 27878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.WARNING); 27888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 27898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 27908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 27918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // set child's level to a disabling one 27938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.INFO); 27948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.WARNING); 27958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 27968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 27978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 27988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // set parent's useParentHandlers to false 27998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.INFO); 28008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 28018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setUseParentHandlers(false); 28028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 28038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 28048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 28058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 28078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test that the parent's handler is notified for a new log record when 28088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * getUseParentHandlers() is false. 28098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 28108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_ParentNotInformed() { 28118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", VALID_RESOURCE_BUNDLE); 28128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockParentLogger("parentLogger", 28138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE2); 28148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 28168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setLevel(Level.INFO); 28178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.INFO); 28188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.addHandler(new MockHandler()); 28198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.INFO, "testLog_ParentInformed"); 28208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setUseParentHandlers(false); 28218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 28228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(child.getUseParentHandlers()); 28238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 28248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 28258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 28278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test that a logger with null level and no parent. Defaulted to 28288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Level.INFO. 28298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 28308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_NullLevelNoParent() { 28318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.INFO, "testLog_NullLevelNoParent"); 28328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(this.sharedLogger.getLevel()); 28338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(this.sharedLogger.getParent()); 28348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(this.sharedLogger.isLoggable(r.getLevel())); 28358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(r); 28368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 28378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 28388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(this.sharedLogger.getLevel()); 28398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath r.setLevel(Level.WARNING); 28418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(this.sharedLogger.isLoggable(r.getLevel())); 28428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(r); 28438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 28448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 28458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath r.setLevel(Level.CONFIG); 28478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath this.sharedLogger.log(r); 28488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(this.sharedLogger.isLoggable(r.getLevel())); 28498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 28508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 28518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 28538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test that a logger inherits its parent level when its level is null. 28548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 28558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_NullLevelHasParent() { 28568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", VALID_RESOURCE_BUNDLE); 28578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 28588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 28598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 28608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.FINER); 28618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getLevel()); 28638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = new LogRecord(Level.FINE, "testLog_NullLevelHasParent"); 28658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 28668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(child.isLoggable(r.getLevel())); 28678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // pop only once, pushed by the child logger's handler 28688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 28698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 28708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), null); 28728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "testLog_NullLevelHasParent"); 28738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), null); 28748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 28758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 28768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINE); 28778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 28788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 28798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getLevel()); 28808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // set the parent logger to disabling level 28828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.CONFIG); 28838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertFalse(child.isLoggable(r.getLevel())); 28848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 28858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 28868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getLevel()); 28878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 28888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // test ancestor 28898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger ancestor = new MockLogger("ancestorLogger", 28908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE3); 28918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setParent(ancestor); 28928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(null); 28938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setUseParentHandlers(false); 28948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath ancestor.setLevel(Level.ALL); 28958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(r); 28968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(child.isLoggable(r.getLevel())); 28978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r, CallVerificationStack.getInstance().pop()); 28988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 28998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getLevel()); 29008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(parent.getLevel()); 29018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 29028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 29048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test that a logger with null resource bundle and no parent. Defaulted to 29058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * null. 29068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 29078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_NullResNoParent() { 29088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger log = new MockLogger("Logger", null); 29098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.addHandler(new MockHandler()); 29108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.setLevel(Level.FINE); 29118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundle()); 29138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundleName()); 29148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getParent()); 29158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath log.log(Level.INFO, "testLog_NullResNoParent"); 29168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 29178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 29188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundle()); 29198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(log.getResourceBundleName()); 29208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getResourceBundle()); 29218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getResourceBundleName()); 29228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 29238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 29258d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test that a logger inherits its parent resource bundle when its resource 29268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * bundle is null. 29278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 29288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_NullResHasParent() { 29298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 29308d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", VALID_RESOURCE_BUNDLE2); 29318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 29328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 29338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.FINER); 29348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getResourceBundle()); 29358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getResourceBundleName()); 29368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(Level.FINE, "testLog_NullResHasParent"); 29388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // pop only once, pushed by the child logger's handler 29398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 29408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 29418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), "childLogger"); 29438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "testLog_NullResHasParent"); 29448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), VALID_RESOURCE_BUNDLE2); 29458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 29468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 29478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINE); 29488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 29498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 29508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getResourceBundle()); 29518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getResourceBundleName()); 29528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 29538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 29558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test that a logger inherits its ancestor's resource bundle when its 29568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * resource bundle and its parent's resource bundle are both null. 29578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 29588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_NullResHasAncestor() { 29598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger child = new MockLogger("childLogger", null); 29608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger parent = new MockLogger("parentLogger", null); 29618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath Logger ancestor = new MockLogger("ancestorLogger", 29628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath VALID_RESOURCE_BUNDLE3); 29638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.addHandler(new MockHandler()); 29648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.setParent(parent); 29658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setParent(ancestor); 29668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath parent.setLevel(Level.FINER); 29678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getResourceBundle()); 29688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getResourceBundleName()); 29698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath child.log(Level.FINE, "testLog_NullResHasAncestor"); 29718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // pop only once, pushed by the child logger's handler 29728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LogRecord r = (LogRecord) CallVerificationStack.getInstance().pop(); 29738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 29748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLoggerName(), "childLogger"); 29768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals(r.getMessage(), "testLog_NullResHasAncestor"); 29778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getResourceBundleName(), VALID_RESOURCE_BUNDLE3); 29788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceClassName(), null); 29798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getSourceMethodName(), null); 29808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getLevel(), Level.FINE); 29818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(r.getParameters()); 29828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertSame(r.getThrown(), null); 29838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getResourceBundle()); 29848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull(child.getResourceBundleName()); 29858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 29868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 29878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 29888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * Test when one handler throws an exception. 29898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 29908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLog_ExceptionalHandler() { 29918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath MockLogger l = new MockLogger("testLog_ExceptionalHandler", null); 29928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath l.addHandler(new MockExceptionalHandler()); 29938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath l.addHandler(new MockHandler()); 29948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 29958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath l.severe("testLog_ExceptionalHandler"); 29968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Should throw RuntimeException!"); 29978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (RuntimeException e) { 29988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 29998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(CallVerificationStack.getInstance().empty()); 30008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* Logger.loadResourceBundle is not publicly accessible in Android 30038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void testLoadResourceBundleNonExistent() { 30048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 30058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // Try a load a non-existent resource bundle. 30068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath LoggerExtension.loadResourceBundle("missinglogger.properties"); 30078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("Expected an exception."); 30088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (MissingResourceException ex) { 30098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // Expected exception is precisely a MissingResourceException 30108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertTrue(ex.getClass() == MissingResourceException.class); 30118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 30148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 30168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * test initHandler 30178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 30188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void test_initHandler() throws Exception { 301984bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller InputStream logPropsStream = Thread.currentThread().getContextClassLoader() 302084bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller .getResourceAsStream(LOGGING_CONFIG_RESOURCE); 302184bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller try { 302284bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller LogManager lm = LogManager.getLogManager(); 302384bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller lm.readConfiguration(logPropsStream); 302484bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller 302584bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller Logger log = Logger.getLogger(""); 302684bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller // can log properly 302784bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller Handler[] handlers = log.getHandlers(); 302884bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller assertEquals(2, handlers.length); 302984bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller } finally { 303084bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller if (logPropsStream != null) { 303184bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller logPropsStream.close(); 303284bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller } 303384bf48564a8560403bd77eee23f7fad63e50340eNeil Fuller } 30348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 30378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * A mock logger, used to test the protected constructors and fields. 30388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 30398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public static class MockLogger extends Logger { 30408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public MockLogger(String name, String resourceBundleName) { 30428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath super(name, resourceBundleName); 30438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 30478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * A mock logger, used to test inheritance. 30488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 30498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public static class MockParentLogger extends Logger { 30508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public MockParentLogger(String name, String resourceBundleName) { 30528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath super(name, resourceBundleName); 30538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void log(LogRecord record) { 30568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath CallVerificationStack.getInstance().push(record); 30578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath super.log(record); 30588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 30638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * A mock handler, used to validate the expected method is called with the 30648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * expected parameters. 30658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 30668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public static class MockHandler extends Handler { 30678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void close() { 30698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // System.out.println("close!"); 30708d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30718d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30728d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void flush() { 30738d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // System.out.println("flushed!"); 30748d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30758d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void publish(LogRecord record) { 30778d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // System.out.println("publish!"); 30788d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath CallVerificationStack.getInstance().push(record); 30798d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30808d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30818d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30828d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 30838d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * A mock handler that throws an exception when publishing a log record. 30848d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 30858d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public static class MockExceptionalHandler extends Handler { 30868d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30878d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void close() { 30888d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // System.out.println("close!"); 30898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void flush() { 30928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // System.out.println("flushed!"); 30938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 30958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public void publish(LogRecord record) { 30968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // System.out.println("publish!"); 30978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath throw new RuntimeException(); 30988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 30998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 31008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 31018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 31028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * A mock filter, always return false. 31038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 31048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public static class MockFilter implements Filter { 31058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 31068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public boolean isLoggable(LogRecord record) { 31078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath CallVerificationStack.getInstance().push(record); 31088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath return false; 31098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 31108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 31118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 31128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath /* 31138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * A mock filter, always return true. 31148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 31158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public static class MockTrueFilter implements Filter { 31168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 31178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath public boolean isLoggable(LogRecord record) { 31188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath CallVerificationStack.getInstance().push(record); 31198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath return true; 31208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 31218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 3122561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes} 3123